首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python3.x shutil.copy FileNotFoundError

Python3.x shutil.copy FileNotFoundError
EN

Stack Overflow用户
提问于 2016-05-19 20:31:45
回答 1查看 6.4K关注 0票数 1

SystemWindows8.1 Python3.4

重复获取FileNotFound Errno2,试图复制目录中的所有文件。

代码语言:javascript
运行
复制
import os
import shutil
source = os.listdir("C:\\Users\\Chess\\events\\")
for file in source :
    shutil.copy(file, "E:\\events\\")

收益率

代码语言:javascript
运行
复制
FileNotFoundError : [Errno2] No such file or directory 'aerofl03.pgn'.

虽然'aerofl03.pgn'是源列表中的第一位,但['aerofl03.pgn', ...]。如果添加一行,则结果相同:

代码语言:javascript
运行
复制
for file in source :
    if file.endswith('.pgn') :
        shutil.copy(file, "E:\\events\\")

相同的结果,如果编码

代码语言:javascript
运行
复制
for file in "C:\\Users\\Chess\\events\\" :

我的shutil.copy(源文件,destinationfile)可以很好地复制单个文件。

EN

回答 1

Stack Overflow用户

发布于 2016-05-19 20:34:03

os.listdir()只列出没有路径的文件名。如果没有完整的路径,shutil.copy()将该文件视为相对于当前工作目录的文件,并且当前工作目录中没有aerofl03.pgn文件。

再次准备路径以获得完整的路径名:

代码语言:javascript
运行
复制
path = "C:\\Users\\Chess\\events\\"
source = os.listdir(path)

for filename in source:
    fullpath = os.path.join(path, filename)
    shutil.copy(fullpath, "E:\\events\\")

所以现在shutil.copy()被告知要复制C:\Users\Chess\events\aerofl03.pgn,而不是<CWD>\aerofl03.pgn

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37333467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档