最赞回答 / henryham
def count(): fs = [] for i in range(1, 4): def f(j): def g(): return j*j return g fs.append(f(i)) return fs f1, f2, f3 = count() print(f1(),f2(),f3())
2016-02-23
最赞回答 / no_nicheng
math.sqrt的返回值是浮点数,所以你的"if isinstance(math.sqrt(x),int)"必然是False的,所以is_sqr()一定返回None,转换为布尔型,即为Falsefilter()的第一个参数,要求为布尔型,可你调用is_sqr()都会返回False,那么必然一个数值都筛选不出来,自然返回的数据为空
2016-02-22
已采纳回答 / modric
你了解过冒泡排序吗?在冒泡排序中一个关键问题就是两个元素比较大小来决定谁在前,谁在后比如1,3,8,5 排序出来应该是1,3,5,8 这种自然数字比较直观, 隐含的比如 8 , 5的位置就是: if 8 < 5: return -1 if 8 > 5: return 1 return 0这个函数就是提供一个两个元素比较的方法,如果return 0 说明两个元素不分先后,可以随意
2016-02-22
最新回答 / 飞雪随风
这个是Python参考文档的一部分sorted(iterable[,
cmp[, key[, reverse]]])Return a new sorted list from the items in iterable.The optional arguments cmp, key, and reverse have
the same meaning as those for the list.sort() method (described in section Mutable
Sequence ...
2016-02-19
最新回答 / 再见你
<...code...>试着整理一下吧:如果<...code...>也就是说a和fn()这个函数是等价的下面<...code...>也就意味着b和f(x)是等价的f(x)是一个有着确认结果的值的,也就是说,b是一个list、int、float、str等的一个值,不再是一个函数了。
2016-02-15