如何删除目录中的所有文件,保持子目录不变

时间:2015-03-19 23:27:48

标签: python file directory

如何删除目录中的所有文件,但保留其所有子目录?

从以下目录开始:

root
|-- somedir
|   |-- file1.txt
|   |-- file2.txt
|   |-- deleteme.ext
|   |-- subfolder1
|   |   |-- important_file.dbf
|   |-- subfolder2
|   |   |-- business_critical.xls

我想以

结束
root
|-- somedir
|   |-- subfolder1
|   |   |-- important_file.dbf
|   |-- subfolder2
|   |   |-- business_critical.xls

1 个答案:

答案 0 :(得分:6)

您可以使用os.listdir()os.path.isfile()

files = [f for f in os.listdir(path) if os.path.isfile(os.path.join(path,f))]
for fname in files:
    fpath = os.path.join(path, fname)
    os.remove(fpath)