Python-日常笔记(个人使用)

2024-05-27 13:03:53 浏览数 (2)

找到新增文件复制到新的文件夹

代码语言: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:路径拼接函数。

0 人点赞