1
9hills 2015-03-01 14:47:01 +08:00
lambda完全可以用普通函数替代。。
|
2
Valyrian 2015-03-01 14:47:17 +08:00
def
|
3
ffffwh 2015-03-01 15:03:19 +08:00
- 反斜杠换行
- if语句 用 if表达式(<true return> if <bool exp> else <false return>)代替 - 循环不明 |
4
zhicheng 2015-03-01 15:36:46 +08:00
歇了吧,Python 这种强制缩进的语言,复杂的匿名函数未必方便多少。而且 Python 本身也支持函数的嵌套定义。所以无所谓了。
|
5
icedx 2015-03-01 15:50:32 +08:00
def~
|
6
love 2015-03-01 16:01:20 +08:00
这是我对python唯一的怨念了。
def的话要想个名字啊,很烦。 如果是资源管理方面的话可以用with来代替。 |
7
binux 2015-03-01 16:06:48 +08:00 1
是的,lambda 就是半残的,别死守着这货
|
8
ruoyu0088 2015-03-01 16:17:50 +08:00 1
大量使用匿名函数会造成程序难以阅读。如果你需要一个多行的函数,那说明这个函数做了不少事情,应该给它起一个名字,这样阅读起来会方便很多,还可以为它写test case,调试的时候也方便。
|
9
ngn999 2015-03-01 16:42:58 +08:00 via iPhone
|
10
wodemyworld 2015-03-01 16:50:00 +08:00
@love 你lambda不要名字啊?如果不用名字,那def用tmp1、tmp2就得了
|
11
aheadlead OP |
12
love 2015-03-01 17:31:24 +08:00
|
13
icedx 2015-03-01 17:36:14 +08:00
def a()
def b() def c() |
14
ruoyu0088 2015-03-01 17:43:08 +08:00 2
如果真的不想起名字,那么就给一个固定的名字就好了,例如:
def _lambda(x): ... |
15
joyee 2015-03-01 19:53:49 +08:00
0.0 如果用python都需要写成多行,那不就是别匿名了还是起个名字增强可读性的信号吗?
|
17
est 2015-03-01 22:06:24 +08:00
可以inline写def 啊。。。
|
18
tclh123 2015-03-01 22:49:57 +08:00
续行符啊
|
19
xierch 2015-03-02 00:45:46 +08:00
def anonymous():
|
20
kk71 2015-03-02 09:28:22 +08:00
js里面匿名函数用多了么…
|
22
notcome 2015-03-02 12:56:28 +08:00 via iPhone
改用 Haskell 就好啦。
也是缩进语法,但 lambda chain 可以写在一列哦,当然多行 lambda 更是不在话下。 |
23
wodemyworld 2015-03-13 14:33:26 +08:00
@love 你如果看到lambda表达式在经过“编译”后的名字,你会更崩溃的
|