import glob,os
os.chdir("C:\\path")
之后如果我执行一行
map(lambda y:os.remove(y),filter(lambda x:os.path.getsize(x)==0,glob.glob('*')))
它不会删除大小为零的文件
但如果我这样做
list(map(lambda y:os.remove(y),filter(lambda x:os.path.getsize(x)==0,glob.glob('*'))))
删除文件。 这实际上是如何工作的?
答案 0 :(得分:1)
在Python3中,map
函数返回map object
(而不是Python2中的列表)。
这是为lazy evaluation设计的,这意味着在使用之前未评估该值。 list
评估它。
答案 1 :(得分:0)