首页   注册   登录
 cnt2ex 最近的时间轴更新

cnt2ex

V2EX 第 96660 号会员,加入于 2015-02-10 04:23:48 +08:00
如何使 tun 的接口作为默认路由?
Linux  •  cnt2ex  •  178 天前  •  最后回复来自 cnt2ex
20
从什么地方可以了解 windows 后台服务的作用
Windows  •  cnt2ex  •  228 天前  •  最后回复来自 shilyx
2
debian 从 PPA 中下载源码安装是否安全?
Linux  •  cnt2ex  •  270 天前  •  最后回复来自 hosiet
3
Linux 上的双显卡,用独显反而 FPS 更低?
Linux  •  cnt2ex  •  359 天前  •  最后回复来自 Panic
5
apt 仅卸载某个包而不卸载其依赖
Linux  •  cnt2ex  •  2017-12-08 12:31:07 PM  •  最后回复来自 leux
22
chrome 在不同的 window manager 下不会共享密码
Linux  •  cnt2ex  •  2017-11-09 20:58:02 PM  •  最后回复来自 cnt2ex
2
如何管理后台的服务?
Linux  •  cnt2ex  •  2017-04-07 00:25:53 AM  •  最后回复来自 libook
6
拿来当个人用的桌面系统用, fedora 还是 debian?
Linux  •  cnt2ex  •  2017-01-07 10:48:52 AM  •  最后回复来自 V2KN
140
cnt2ex 最近回复了
@j2gg0s
我个人倾向于第一次给变量“赋值”看作声明,但是由于 python 中的特殊规则(不需要指明类型)并且没有类似 let 这样的关键字,所以“赋值”和“声明”使用了相同的语法,结果导致了没有声明只有赋值。不过这只是我个人的观点。

我说的按照作用域规则也是根据其他语言的习惯,因为我觉得块作用域是个好东西,所以在 python 里也遵从这样的规则(即使 python 本身并没有 if 作用域)。

以下是题外话,第二种写法,我觉得应该是函数式写法。因为函数式编程语言里通常不希望(甚至不允许)使用有副作用的语句,所以即使由于作用域规则写成:
calculate_func = "calculate"
task_id = sin_id
if has_data:
calculate_func = "rollback"
task_id = sql_data.get("task_id", "")
return task_id, calculate_func
这种先设置一个值,然后再根据条件修改一个值这样的写法是在函数式语言里不被提倡的。但是这种在实际应用中却十分常见,所以很多函数式的语言都会让 if 变成一个可以返回值的表达式。python 这种风格应该也是从函数式里借鉴过来的。
主要是作用域问题,虽然在 python 里没有问题,但其实第一种写法里那两个变量的作用域只在 if 里。
而我如果把 return 放进 if 里,会导致两个分支都有相同的代码。
所以我个人更偏向于:
calculate_func, task_id = ("rollback", sql_data.get("task_id", "")) if has_data else ("calculate", sin_id)
环境变量的传递不是 bash 完成的,是操作系统完成的。在创建子进程的时候操作系统把带有环境变量的那部分内存区域拷贝到子进程的内存完成了环境变量的传递。
24 天前
回复了 onc 创建的主题 程序员 开源,垄断,人才的成长
???

我怎么读完下来读出了“开源导致垄断”这个结论????????
42 天前
回复了 absente 创建的主题 程序员 我就知道很多人会黑中文编程
@absente
我是认为自然语言对一个人的思维有影响的。但是到编程语言上没有区别,因为编程语言本身就是高度简化的。而所谓中文编程也无非就是把几个英文字符替换成中文字符,这没有任何本质上的改变。
除非你说用中文的思维设计一种编程语言,但实际上这种编程语言的字符本身就没必要限制成中文字符,最终又回到了其实用中文英文没有区别的结论上。
42 天前
回复了 absente 创建的主题 程序员 我就知道很多人会黑中文编程
你既然要说 notation as a tool of thought,那应该举出中文的优势,而不是说 just for fun。
中文在一些方面有好处,也有一些方面并没有好处,但我认为这些东西最终和语言无关。
比如我认为中国人可以很快背诵九九乘法表的原因是中文数字发音有规律。
又比如
>问曰一二三相加。
>答曰六
以及
>九章算术里只用相加就可以表达清楚的概念,西方在几百年后仍然还要使用\sum_{i=0}^{n} A_{i} 这样拙劣的记号。

你说这一点,显然是\sum_{i=0}^{n} A_{i} 这个记号比你用相加要高级,例子中的相加,无非是加一堆常数,而\sum_{i=0}^{n} A_{i}是在加整个未知的数列,并且这个数列的大小可变,并且利用这个表达式,我们还可以很快的写出乘法的分配率的式子。
但是说白了其实这 2 个的区别无非是\sum_{i=0}^{n} A_{i} 用的是前缀表达式,而“一二三相加”用的是后缀表达式。当然我可以改造中文的后缀表达式使他达到类似的效果,所以这最终这和语言没有关系。
178 天前
回复了 cnt2ex 创建的主题 Linux 如何使 tun 的接口作为默认路由?
感谢前面给的官方文档。
看到有人收藏就顺便写下咋解决的吧。

问题不是出在系统的路由表上。
而是 tincd 自己内部也维护了一个路由表,所以得在 tincd 的配置里把 subnet 也对应修改掉(改成 0.0.0.0 )。
179 天前
回复了 cnt2ex 创建的主题 Linux 如何使 tun 的接口作为默认路由?
@ipwx
实际上你这个我也试过了(这个我的确没有提到,因为我觉得我思路可能完全是错的),我甚至在服务器那边加上了 NAT 的规则也没能把包发过去。
我按照你那样的改法,ping 服务器 ZZ.ZZ.ZZ.ZZ 是能 ping 通的,但是 ping 其他任何地址都是不行的,但是通过 192.168.200.0 接口依然不行。
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2261 人在线   最高记录 4019   ·  
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.1 · 16ms · UTC 06:32 · PVG 14:32 · LAX 22:32 · JFK 01:32
♥ Do have faith in what you're doing.
沪ICP备16043287号-1