我正在尝试在源目录中复制以XXXXX开头的excel文件,并将它们放入与excel文件的第一个XXXXX匹配的目标目录中。我也只想匹配目标文件夹的第一个XXXXX。然后将文件放入目标文件夹后,我想更改名称。下面的代码只允许我将src excel放入一个名为XXXXX not的文件夹(例如'XXXXX FOLDER'),它只重命名根目录中的文件。想法?
for root, dirs, files in os.walk(dir_src):
for file in files:
if file.endswith(".xlsx"):
filename = file[:5]
shutil.copy((dir_src +'\\'+file), (dir_dst + '\\'+ filename))
for filename in glob.glob(os.path.join(dir_dst + '\\'+ filename, '*.xlsx')):
os.rename(filename, 'Weekly_Claims.xlsx')
答案 0 :(得分:0)
我想我已经明白了......虽然有人可能有更多的pythonic方式做到这一点
import glob,os
import shutil
import re
for root, dirs, files in os.walk(dir_src):
for file in files:
if file.endswith(".xlsx"):
filename = file[:5]
src_file = os.path.join(dir_src, file)
#search destination subdirectory for folder
for root, dirs, files in os.walk(des_test):
for name in dirs:
#if the source filename equals first 5 of the subdirectory name, copy to the des_file
if filename == name[:5]:
dst_file = os.path.join(des_test, name)
shutil.copy(src_file, dst_file)