【发布时间】:2017-08-19 03:29:44
【问题描述】:
在 Python 3.5 中,代码
>>> T = map(print, [1, 2, 3])
>>> type(T)
<class 'map'>
返回一个地图对象。我希望这个地图对象 T 包含数字 1、2 和 3;都在不同的行。
实际上,这确实会发生。唯一的问题是它还会输出一个与输入列表长度相同的Nonevalues 列表。
>>> list(T)
1
2
3
[None, None, None]
>>>
这对于我使用的任何输入都是可重复的,而不仅仅是上面显示的任意整数列表。 谁能解释一下为什么会这样?
【问题讨论】:
-
print返回None。map针对可迭代项收集函数的返回值。 -
print(print(1)) -
为什么不呢?
标签: python dictionary printing nonetype