Errno 22 invaild(wb)或文件名。 Python shutil.copy

时间:2015-03-25 13:27:25

标签: python copy shutil

我是python的初学者,我对这个脚本有问题:

import errno import shutil import os  
        def copystuff(src, dest):
        if os.path.isfile(src):
            dest_dirname = os.path.dirname(src)
            if not os.path.isdir(dest_dirname):
                os.makedirs(dest_dirname)
            shutil.copy2(src, dest)
        else:
            shutil.copytree(src, dest)       
    copystuff('C:\\Downloads\\index.html', 'J:\\include\\')

其中J是FlashDriveUSB,而我正在使用Python 2.7

当我发布这个时,我得到了类似的东西:

C:\Python27>python copy_file.py
Traceback (most recent call last):
  File "copy_file.py", line 24, in <module>
    copystuff('C:\\Downloads\index.html', 'D:\\include\\')
  File "copy_file.py", line 20, in copystuff
    shutil.copy2(src, dest)
  File "C:\Python27\lib\shutil.py", line 127, in copy2
    copyfile(src, dst)
  File "C:\Python27\lib\shutil.py", line 82, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 22] invalid mode ('wb') or filename: 'D:\\include\\'

请帮帮我。

1 个答案:

答案 0 :(得分:1)

我解决了我的问题。我希望将文件复制到文件夹中并不存在,所以我在代码中添加了几行,检查输入的路径是否存在以及是否创建了路径。