Python os模块实现彻底清空文件夹与内容的源码
需积分: 1 39 浏览量
更新于2024-08-03
收藏 764B TXT 举报
在Python编程中,有时候我们需要对文件夹及其内容进行清空操作,这与简单的删除有所不同,因为清空可以确保不会留下任何残留的文件或目录,提供了一种更为彻底的清理方式。这个需求可以通过Python的内置os模块来实现。os模块是操作系统接口的一部分,允许我们执行底层的文件和目录操作。
要实现清空文件夹及内容的功能,我们可以创建一个名为`delete_file_folder`的函数,如所示:
```python
import os
def delete_file_folder(src):
'''
删除指定路径下的所有文件和子目录
'''
if os.path.isfile(src): # 检查是否是文件
try:
os.remove(src) # 使用os.remove删除文件
except Exception as e:
print(f"删除文件 {src} 时出错:{e}")
elif os.path.isdir(src): # 检查是否是目录
for item in os.listdir(src): # 遍历目录中的所有文件和子目录
item_path = os.path.join(src, item) # 构建子路径
delete_file_folder(item_path) # 递归调用自身处理子目录
try:
os.rmdir(src) # 如果目录为空,使用os.rmdir删除目录
except Exception as e:
print(f"删除目录 {src} 时出错:{e}")
# 示例使用
if __name__ == '__main__':
dirname = r'G:\windows' # 替换为你需要清空的文件夹路径
delete_file_folder(dirname)
```
在这个代码中,首先检查`src`是否为文件,如果是,则尝试使用`os.remove()`删除。如果`src`是目录,函数会遍历目录内容,并对每个子项递归调用自身,确保清空所有子文件和子目录。最后,如果目录已空,将尝试使用`os.rmdir()`删除目录。
请注意,使用此函数时,确保路径正确且有适当的权限,因为删除操作是不可逆的。此外,如果在删除过程中遇到错误(如权限不足或文件正在被其他程序使用),函数会捕获异常并打印错误信息,但不会阻止后续的清理过程。
2020-09-21 上传
2020-09-24 上传
2022-07-05 上传
2024-03-15 上传
2019-11-25 上传
2021-10-02 上传
2022-11-26 上传
2022-05-23 上传
smartsmile2012
- 粉丝: 866
- 资源: 83
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析