农夫三 发表于 2020-9-10 07:01:34

print的疑问

a= map(lambda x,y :,,)
print(a)

print出来的结果就显示<map object at 0x0000000002981AF0>

但是list(a)就可以正常显示结果

list(a)
[, , , , , ]


为什么print就打印不出来?

heidern0612 发表于 2020-9-10 07:53:30

python2中返回列表,python3中返回迭代器。

所以你返回的<map object at 0x0000000002981AF0> 其实是个迭代器,需要你再list一下。

具体可以看这篇介绍:戳我前进

code_noob 发表于 2020-9-12 12:23:28

迭代器返回内存地址。
你这个没生成列表。

小破竹林 发表于 2020-9-12 14:55:42

a是一个迭代器,print打印出来就是迭代器对象,
list之后会变成列表,打印出来就是列表
页: [1]
查看完整版本: print的疑问