Sha*_*yHa 0 python operating-system glob
我正在尝试使用此方法删除多个文件:
map(os.remove, glob.glob("*.pdf"))
Run Code Online (Sandbox Code Playgroud)
我收到带有 pdf 扩展名的文件列表,但这不会删除任何文件。
我的解决方案是用 包裹这张地图list()。
还有其他不需要使用列表或其他东西的解决方案吗?
使用for循环:
for i in glob.glob('*.pdf'):
os.remove(i)
Run Code Online (Sandbox Code Playgroud)
之所以map(...)其本身不起作用的map(...)是它将返回一个生成器,并且只有在实际从生成器访问项目后才会计算表达式。
此外, 的要点map(...)是将在每个项目上调用的函数返回的表达式的结果进行分组,但这在这里并没有真正意义,因为它os.remove(...)实际上不返回任何内容(或者换句话说,返回None),因此,由于组装 s 列表None并没有多大作用(无论如何你都会立即将其扔掉),因此使用循环for是完成此任务的更合适的方法。
| 归档时间: |
|
| 查看次数: |
958 次 |
| 最近记录: |