要删除指定文件所在的文件夹下的所有文件(不包括文件夹本身),你可以使用Python的os
模块和os.path
模块。下面是一个示例代码,演示如何删除文件夹下的所有文件,但保留文件夹本身:
import os
def delete_files_in_folder_except_specified(file_name):
# 获取指定文件的绝对路径
specified_file_path = os.path.abspath(file_name)
# 获取指定文件所在的文件夹路径
folder_path = os.path.dirname(specified_file_path)
# 获取文件夹中的所有文件
file_list = os.listdir(folder_path)
# 遍历文件列表
for file in file_list:
# 构建文件的绝对路径
file_path = os.path.join(folder_path, file)
# 判断是否是文件,并且文件路径不等于指定文件的路径
if os.path.isfile(file_path) and file_path != specified_file_path:
# 删除文件
os.remove(file_path)
# 指定要保留的文件名
specified_file_name = "generated_docxFilePath"
# 调用函数删除文件夹中除指定文件外的所有文件
delete_files_in_folder_except_specified(specified_file_name)
在这段代码中,我们首先获取指定文件的绝对路径,然后获取该文件所在的文件夹路径。接下来,我们遍历文件夹中的所有文件,对于每个文件,我们检查它是否是文件(而不是文件夹),并且文件路径不等于指定文件的路径。如果满足这两个条件,我们将删除该文件。这样,最终只会保留指定的文件夹以及指定的文件,而删除其他所有文件。