在Shutil.copyfile

时间:2019-05-18 07:38:48

标签: python-3.x copy file-rename

我有一个包含一些文件的文件夹。我的代码必须将这些文件复制到具有新名称的新文件夹中。 请注意,“ clean_file_name”是我对文件名进行一些更改的功能……现在不重要了。

假设原始文件名为“我的文件名.pdf”,而新文件名为“ my_file_name.pdf”

import os
import shutil

path = "E:\\sourcedir\\"
os.mkdir(os.path.join(path,'renamed'))

for r,d,f in os.walk(path):
  for file in f:
    if '.pdf' in file:
      newfilename = clean_file_name(file)

      src = os.path.join(path,file)
      dst = os.path.join(path,'renamed',new_file_name)
      shutil.copyfile(src,dst)

... 
something else

如果我运行此代码,则会创建“重命名”目录,所有文件都将以新名称复制到该目录中,但是会收到错误消息!

Traceback (most recent call last):
  File "E:\listadir.py", line 81, in <module>
    shutil.copyfile(oldfile,newfile)
  File "C:\Users\Simone\AppData\Local\Programs\Python\Python37- 32\lib\shutil.py", line 120, in copyfile
with open(src, 'rb') as fsrc:
FileNotFoundError: [Errno 2] No such file or directory: 'E:\\sourcedir\\my_file_name.pdf'

当然,低于此点的任何内容都不会处理。

编辑 我通过两个单独的步骤来解决此问题。 首先,我将文件复制到“重命名”文件夹中 然后,我将所有操作都放在新文件夹中

这是我的拳头python脚本...我很好奇我为什么能复制并重命名cicle。

0 个答案:

没有答案