已采纳回答 / qq_研_motJOQ
return lambda : i*i 返回的是一个函数,并把函数存进列表,分别传递给f1, f2,f3,之后的f1(),f2(), f3()表示调用返回的lambda函数,而去掉lambda后返回的是一个值(即 i*i的值),此时f1 ,f2, f3为数值,数值无法被当做函数调用(即不存在 1() 这种写法)
2018-10-04
已采纳回答 / 布鲁斯先生
注意一下你的Python的版本,filter在Python2.7和Python3.x中有所区别:Pyhton2.7 返回列表,Python3.x 返回迭代器对象,有惰性运算的特性,节省了内存。
2018-10-01
已采纳回答 / 慕雪1559855
def log(*args, **kw): def fn(f): print "call " + f.__name__ return f return fn
2018-09-25
已采纳回答 / Ivana
加号操作符会调用__add__方法,r1 + ... 也就是r1对象调用其__add__方法,因此self传入的就是r1,另外的r2相当于参数,也就是__add__(self, ...)中的...,在这里就对应r
2018-09-20
已采纳回答 / 慕神0525336
因为none无法用strip,就是为了避免none被strip报错,所以才先s,none先判断false ,and后面就不会执行了。取巧的用法,这么写相当于免了你去判断s是不是none,以及是none之后的后处理
2018-09-16
已采纳回答 / MEtoy
Python使用缩进对齐组织代码的执行,所有没有缩进的代码,都会在载入时自动执行。每个文件(模块)都可以任意写一些没有缩进的代码,并在载入时自动执行。为了区分 主执行代码和被调用文件,Python引入了变量:__name__。1)当文件是被调用时,__name__的值为模块名;2)当文件被执行时,__name__的值为 ‘__main__’。以上摘取于https://blog.csdn.net/u011511601/article/details/53504355详细解释在https://blog.csd...
2018-09-16
已采纳回答 / weibo_会飞的鱼yu11_04267
将a赋值给b,只是将b指向了list,并没有创建新的list;而以切片方式将list赋值给b,相当于新建了个list,a和b是两个独立的list,所以删除a中的a[0],并不影响b
2018-09-06
最新回答 / 末路伯爵
print (sorted(['bob','about','Zoo','Credit'],key=lambda x: x.upper())) 这是3.7版本的代码
2018-09-04