python批量删除文件夹子文件
时间: 2024-09-12 19:01:52 浏览: 49
在Python中,我们可以使用`os`模块和`shutil`模块来批量删除文件夹下的所有子文件和子目录。下面是一个示例函数,它接受一个路径作为输入,并递归地删除其中的所有文件:
```python
import os
import shutil
def delete_files_and_subfolders(path):
# 检查路径是否存在
if not os.path.exists(path) or not os.path.isdir(path):
print(f"{path}不存在或不是一个目录")
return
# 使用os.walk遍历目录及其内容
for root, dirs, files in os.walk(path, topdown=False):
# 删除文件
for file in files:
file_path = os.path.join(root, file)
try:
os.remove(file_path)
print(f"已删除文件: {file_path}")
except Exception as e:
print(f"删除文件{file_path}时出错: {e}")
# 删除空的子目录
for dir in dirs:
dir_path = os.path.join(root, dir)
try:
shutil.rmtree(dir_path)
print(f"已删除子目录: {dir_path}")
except Exception as e:
print(f"删除子目录{dir_path}时出错: {e}")
# 调用函数并传入需要删除的文件夹路径
delete_files_and_subfolders("/path/to/your/directory")
```
在调用这个函数之前,确保你有权限删除这些文件,并谨慎操作,因为删除操作是不可逆的。
阅读全文