为什么使用 `map` 函数打印语句却没有执行?
map 不执行的探究
问题:
使用 map 时,明明传入了打印语句,但返回的却是 map object,没有执行打印操作。
代码:
map(lambda x: print(x), [1, 2, 3]) # <map object at></map>
解答:
map 函数返回的是一个 map object,它本身并不会执行传入的语句。map object 是一种惰性的数据结构,只有在需要时才会执行语句。
list(map(lambda x: print(x), [1, 2, 3]))
这样,print 语句就会被立即执行,并打印出结果:
1 2 3
以上就是为什么使用 `map` 函数打印语句却没有执行?的详细内容,更多请关注其它相关文章!