有没有一种方法可以有效地删除多个文件?

如标题所述,是否有更好的方法删除python中的多个文件?当前,我通过循环浏览每个文件来删除。

import os
files = ["test_file.txt", "test_failed.txt"]
for file in files:
    if os.path.exists(file):
        os.remove(file)
评论
  • 发霉的情书
    发霉的情书 回复

    A possibility is to use aiofiles.os (pip install aiofiles), which provides an async wrapper around the standard os.remove. In this way, you can execute the deletion process asynchronously:

    from aiofiles.os import remove
    import asyncio
    
    async def run_deletion(f_name):
       await remove(f_name)
    
    async def delete_all(filenames):
      await asyncio.gather(*map(run_deletion, filenames))
    
    asyncio.run(delete_all(files))
    
  • 俄好想迩
    俄好想迩 回复

    您所做的没有什么特别低效的。

    但是,如果要删除整个目录,可以使用rmtree。

    import shutil
    shutil.rmtree('/my-dir/')