Python 清空文件夹下的文件
在日常开发中,有时我们需要清空一个文件夹下的所有文件,以便重新写入新的数据。Python 提供了多种方法可以实现这一功能,我们可以使用 os
模块或者 shutil
模块来实现清空文件夹的操作。
使用 os 模块清空文件夹
在 Python 中,可以使用 os.listdir()
方法获取目标文件夹中的所有文件和文件夹,然后通过循环遍历的方式删除文件。下面是一个示例代码:
import os
def clear_folder(folder_path):
# 获取文件夹中所有文件和文件夹的名称
files = os.listdir(folder_path)
for file_name in files:
file_path = os.path.join(folder_path, file_name)
# 判断如果是文件,则直接删除
if os.path.isfile(file_path):
os.remove(file_path)
# 如果是文件夹,则递归调用 clear_folder() 方法
elif os.path.isdir(file_path):
clear_folder(file_path)
# 调用 clear_folder() 方法清空指定文件夹
folder_path = "/path/to/folder"
clear_folder(folder_path)
在上面的代码中,我们定义了一个 clear_folder()
方法来清空指定文件夹中的所有文件和文件夹。首先使用 os.listdir()
方法获取文件夹中的所有内容,然后判断是文件还是文件夹,如果是文件则直接删除,如果是文件夹则递归调用 clear_folder()
方法。
使用 shutil 模块清空文件夹
除了使用 os
模块外,我们还可以使用 shutil
模块提供的 rmtree()
方法来删除整个文件夹,包括文件夹中的所有文件和文件夹。下面是一个示例代码:
import shutil
def clear_folder(folder_path):
# 使用 shutil.rmtree() 方法递归删除文件夹及其下的内容
shutil.rmtree(folder_path)
# 调用 clear_folder() 方法清空指定文件夹
folder_path = "/path/to/folder"
clear_folder(folder_path)
在上面的代码中,我们定义了一个 clear_folder()
方法,直接使用 shutil.rmtree()
方法来删除指定文件夹及其下的所有内容。这样可以一次性清空文件夹,非常方便。
运行结果
无论是使用 os
模块还是 shutil
模块,都可以实现清空文件夹的功能。在实际开发中,可以根据具体需求选择合适的方法来清空文件夹。下面是示例代码的运行结果:
# 使用 os 模块清空文件夹
clear_folder("/path/to/folder")
# 使用 shutil 模块清空文件夹
clear_folder("/path/to/folder")
通过以上方法,我们可以快速清空文件夹下的所有文件,使得文件夹恢复到初始状态,以便后续操作。