找到新增文件复制到新的文件夹
代码语言:javascript复制import os
import shutil
# 定义文件夹路径
folder1 = 'path/to/folder1'
folder2 = 'path/to/folder2'
folder3 = 'path/to/folder3'
# 确保文件夹3存在
os.makedirs(folder3, exist_ok=True)
# 获取文件夹1中的所有.md文件
md_files_folder1 = [f for f in os.listdir(folder1) if f.endswith('.md')]
# 获取文件夹2中的所有文件名
files_folder2 = set(os.listdir(folder2))
# 遍历文件夹1中的.md文件
for md_file in md_files_folder1:
# 如果文件不在文件夹2中
if md_file not in files_folder2:
# 复制文件到文件夹3中
shutil.copy(os.path.join(folder1, md_file), folder3)
print(f'复制文件: {md_file} 到 {folder3}')
else:
print(f'文件已存在于文件夹2中: {md_file}')
print('脚本运行完毕')
os.makedirs(folder3, exist_ok=True):在当前路径下查看是否有一个文件夹叫做folder3,如果没有则创建。
参数1:可以是路径,也可以是当前文件夹的名称。如果是文件夹名称,那么就是在当前目录下创建folder3.
md_files_folder1 = [f for f in os.listdir(folder1) if f.endswith('.md')]:在括号内第一个f表示需要加入在列表中的元素。第二个f表示遍历在文件夹中所有的文件或者目录。
os.listdir():函数表示遍历文件夹下所有的子文件和子文件夹。
set:相当与一个去重后的数组。
os.path.join:路径拼接函数。