在Python中使用os.unlink删除多个文件

3 投票
3 回答
6011 浏览
提问于 2025-04-15 18:07

可能是重复的问题:
在Windows上用Python删除特定类型的文件

我想知道怎么才能删除一个文件夹里所有扩展名为“.txt”的文件。我通常是这样做的:

import os
filepath = 'C:\directory\thefile.txt'
os.unlink(filepath)

有没有类似于 os.unlink('C:\directory\*.txt') 的命令,可以一次性删除所有的 .txt 文件?我该怎么做呢?谢谢!

3 个回答

0

遍历一下 C:\directory\ 这个文件夹里的所有文件,看看文件的后缀名是不是 .txt,如果是的话就把它删除掉。

4

使用 glob 模块可以获取与特定模式匹配的文件列表,然后在一个循环中对这些文件调用 unlink 方法。

15
#!/usr/bin/env python

import glob
import os

for i in glob.glob(u'*.txt'):
  os.unlink (i)

这样做就可以了。

补充:你也可以用“单行代码”来实现,使用 map 操作:

#!/usr/bin/env python

import glob
import os

map(os.unlink, glob.glob(u'*.txt'))

撰写回答