[英]Python map v2.7 no long working in v3.2
My code in Python v2.7 is no longer working in Python v3.2 我在Python v2.7中的代码不再适用于Python v3.2
I have searched everywhere but I do not find this case. 我到处搜索,但我没有找到这种情况。 It seems that the function
self.buildGraph(i, n)
is never actually called 似乎函数
self.buildGraph(i, n)
实际上从未被调用过
n = 33
map(lambda i : self.buildGraph(i, n), range(n))
however with the function: 但是有了这个功能:
map(lambda x : fu(a, x), range(10))
there is no problem. 没有问题。
在python 3 map中返回lazy iterator对象 ,就像python 2中的imap一样,所以你需要评估你的迭代器,例如:
list(map(lambda i : self.buildGraph(i, n), range(n)))
我没有看到你的一个map
示例如何给出你期望的,而另一个没有,但作为一般提示,当使用3.x中的现有2.x代码时 - 使用2to3工具确保地图/过滤器/范围等行为的变化......不要咬你的后方。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.