我正在尝试将图像复制到本地目录,以便以后使用我的程序。
这是我的语法:
import shutil
import os
path = 'C:\t1\x.txt'
source = os.listdir(path)
destination = "C:\t2" #pre-existing folder
for files in source:
if files.endswith(".txt"):
shutil.copy(files,destination)
我得到的错误说:
(unicode error)'unicodescape'编解码器无法解码位置5-6中的字节:截断\ xXX转义。
答案 0 :(得分:0)
您需要执行以下操作之一:
path = r'C:\t1\x.txt'
或
path = 'C:\\t1\\x.txt'
或正如Bakuriu指出的那样
path = 'C:/t1/x.txt'
destination
问题是\
字符会导致Python以不同方式解释字符串。因此,您可以告诉它将字符串视为原始文本(r''
)或者为其提供\
字面值,即\\
或者,您可以使用os.path.join()
构建文件夹路径,从而使脚本平台独立。对于您正在运行的任何平台,这将始终使用正确的分隔符构造它们。请注意the docs:
请注意,在Windows上,因为每个目录都有一个当前目录 drive,os.path.join(“c:”,“foo”)表示相对于的路径 驱动器C上的当前目录:(c:foo),而不是c:\ foo。