Shutil.copytree>WindowsError:[错误3]系统找不到指定的路径:

2024-06-25 22:42:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图从源文件夹中提取内容并移动到目标文件夹中

folder1 = 2018
folder2 = 8    
folder3 = 3
    source = os.path.join("C:\\","Pizza","Sammy","Logs", "Archive", "DataLog_Private" ,str(folder1),"0" + str(folder2),"0" + str(folder3))

    destination = os.path.join("C:\\","Users", "alex", "Desktop", "logPull" , "DataLog_Private" ,str(folder1),"0" + str(folder2),"0" + str(folder3))

shutil.copytree(source,destination)

我也尝试过这条路

#source = r"C://Pizza//Sammy//Logs//Archive//DataLog_Private//%s//%s//%s//" %(str(folder1),"0" + str(folder2),"0" + str(folder3))
#destination = r"C://Users//alex//Desktop//logPull//DataLog_Private//%s//%s//%s//" %(str(folder1),"0" + str(folder2),"0" + str(folder3))

在使用copytree时,两条路径都出现了此错误

WindowsError: [Error 3] The system cannot find the path specified'C:\\Pizza\\Sammy\\Logs\\Archive\\DataLog_Private\\2018\\08\\03/*.*'

请帮忙


Tags: path文件夹sourceosprivatedestinationlogsarchive
1条回答
网友
1楼 · 发布于 2024-06-25 22:42:27

以下内容适用于我在Python3.6中的工作,请注意环境变量的使用

import os
import shutil

folder1 = 2018
folder2 = 8    
folder3 = 3

drive = os.path.join(os.getenv("HOMEDRIVE"), os.sep)
date_path = os.path.join(f"{folder1}", f"{folder2:02}", f"{folder3:02}")

source = os.path.join(
    drive, "Pizza","Sammy", "Logs", "Archive", "DataLog_Private", date_path
)
destination = os.path.join(
    os.getenv("USERPROFILE"), "Desktop", "logPull", "DataLog_Private", date_path
)

shutil.copytree(source, destination)

HOMEDRIVE应指向Windows安装在的任何磁盘。列出默认环境变量here

f"{expression}"符号称为f字符串。这是在Python 3.6 here's the PEP中引入的。将:02添加到括号内会给数字一个前导0

相关问题 更多 >