关于#python#移动文件的问题,如何解决?
python
请教大家一个问题,我现在又两个文件夹A与B,文件夹A中二级目录是文件夹,文件夹B中二级目录是docx文件。
现在想让B文件中docx文件根据名字匹配复制到A文件夹下的二级文件夹下,使用python这个代码该如何编写,求指点。有没有一个完整的代码?
现在样子:
预期结果样子:
关于#python#移动文件的问题,如何解决?
python
请教大家一个问题,我现在又两个文件夹A与B,文件夹A中二级目录是文件夹,文件夹B中二级目录是docx文件。
现在想让B文件中docx文件根据名字匹配复制到A文件夹下的二级文件夹下,使用python这个代码该如何编写,求指点。有没有一个完整的代码?
现在样子:
预期结果样子:
可以使用 Python 的 os 模块来实现这个功能。
首先,你需要使用 os.listdir 函数获取 A 文件夹和 B 文件夹中的所有二级文件夹的名字。然后,你可以遍历 B 文件夹中的所有 docx 文件,并使用 os.path.splitext 函数获取文件的名字(不包括扩展名)。
接下来,你可以使用 os.path.exists 函数检查 A 文件夹下是否存在同名的二级文件夹。如果存在,你可以使用 shutil.copy 函数将 docx 文件复制到这个二级文件夹中。
我写了这个代码给你,它假设 A 文件夹和 B 文件夹的路径分别为 'path/to/A' 和 'path/to/B':
import os
import shutil
# 获取 A 文件夹和 B 文件夹中的所有二级文件夹的名字
dirs_in_a = os.listdir('path/to/A')
dirs_in_b = os.listdir('path/to/B')
# 遍历 B 文件夹中的所有 docx 文件
for file in os.listdir('path/to/B'):
if file.endswith('.docx'):
# 获取文件的名字(不包括扩展名)
name, _ = os.path.splitext(file)
# 检查 A 文件夹下是否存在同名的二级文件夹
if name in dirs_in_a:
# 将 docx 文件复制到 A 文件夹下的同名二级文件夹中
shutil.copy('path/to/B/' + file, 'path/to/A/' + name)