`shutil.copyfile`错误:权限被拒绝

时间:2017-07-17 16:48:38

标签: python shutil file-copying

我已经解决了很多其他问题,但是他们的解决方案似乎没有在这里工作,或者我没有正确理解,并且会喜欢你的帮助。

我得到了:

IOError: [Errno 13] Permission denied: 'W:\\test\\Temporary Folder 195\\Sub-fold1 

这是我开始使用的一般代码。

    summary_file = r'W:/test/SDC Analysis Summary.docm'
    shutil.copyfile(summary_file, os.getcwd())

我还根据其他线程改变了一点,特别是将summary_file替换为实际文本,并将\添加到工作目录的末尾而没有成功。真的不知道我在这里缺少什么。我知道文档正在寻找完整的路径,但我相信我满足了这个要求。我在这里错过了什么?

注意:由于速度的提高,需要在copy上使用copyfile。

2 个答案:

答案 0 :(得分:3)

来自documentation

 dst must be the complete target file name

您不能只使用os.getcwd()作为目的地。

答案 1 :(得分:0)

您应该是目的地的完整目标文件名

目的地=路径目录+文件名。*

我将这段代码fir复制wav文件与shutil一起使用:

    # open file with QFileDialog

    browse_file = QFileDialog.getOpenFileName(None, 'Open file', 'c:', "wav files (*.wav)")

    # get file name 

    base = os.path.basename(browse_file[0])
    os.path.splitext(base)
    print(os.path.splitext(base)[1])

    # make destination path with file name

    destination= "test/" + os.path.splitext(base)[0] + os.path.splitext(base)[1]
    shutil.copyfile(browse_file[0], destination)