Python递归删除文件夹下所有文件和子文件夹

这篇文章介绍如何使用Python删除文件夹下的所有文件和子文件夹。

使用os模块

Python的os模块提供了与操作系统交互的函数。我们可以使用os.listdir()获取文件夹中所有项目列表,然后使用os.remove()删除文件,使用os.rmdir()删除空文件夹。

以下代码展示如何递归删除文件夹下所有文件和子文件夹:pythonimport os

def delete_files_in_folder(folder_path): ''' 递归删除指定文件夹下的所有文件和子文件夹。

Args:      folder_path: 要删除的文件夹路径。    '''    for filename in os.listdir(folder_path):        file_path = os.path.join(folder_path, filename)        if os.path.isfile(file_path):            os.remove(file_path)        elif os.path.isdir(file_path):            delete_files_in_folder(file_path)            os.rmdir(file_path)

用法示例folder_path = '/path/to/folder' # 替换为实际的文件夹路径delete_files_in_folder(folder_path)

代码说明:

  1. delete_files_in_folder(folder_path) 函数: - 接收一个文件夹路径作为参数。 - 使用 os.listdir(folder_path) 获取文件夹下所有文件和子文件夹的名称列表。 - 遍历列表,对每个项目: - 使用 os.path.join(folder_path, filename) 构造完整的文件/文件夹路径。 - 使用 os.path.isfile(file_path) 判断是文件还是文件夹。 - 如果是文件,使用 os.remove(file_path) 删除。 - 如果是文件夹,递归调用 delete_files_in_folder() 删除其内容,然后使用 os.rmdir(file_path) 删除空文件夹。

  2. 用法示例: - 将 '/path/to/folder' 替换为你要删除的文件夹的实际路径。 - 调用 delete_files_in_folder(folder_path) 开始删除操作。

注意:

  • 删除操作是不可逆的,请谨慎操作!- 确保你有删除目标文件夹及其内容的权限。- 如果只想删除文件夹中的文件而保留子文件夹,请将 os.rmdir(file_path) 这一行注释掉。
Python递归删除文件夹下所有文件和子文件夹

原文地址: https://www.cveoy.top/t/topic/exRZ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录