【发布时间】:2019-11-02 04:01:20
【问题描述】:
我知道 python 打印包含反斜杠的字符串与它实际的方式不同。我不关心打印语句,但我只希望字符串以两个反斜杠开头,所有其他斜杠都是这样的一个斜杠:
\\xyz\abc\fish\orange
目前,这是我编写的代码,但出现以下错误:
import shutil
dir_path = r"\\xyz\abc\fish\orange"
print(dir_path)
shutil.copyfile("U:/Profile/Downloads/document1", dir_path)
我收到一个错误:
FileNotFoundError: [Errno 2] No such file or directory: '\\\\xyz\\abc\\fish\\orange'
我用模拟名称替换了实际的目录名称,但重要的是格式化斜杠。我宁愿在不使用 os 库的情况下解决这个问题。谢谢。
【问题讨论】:
-
在所有操作系统上使用正斜杠。使用
os.path.exists(somepath)会给你带来什么问题吗? -
先检查目录是否存在。如果您想在不考虑操作系统的情况下正确表示路径,也可以使用友好的建议
pathlib。 -
r"\\xyz\abc" == '\\\\xyz\\abc',有什么问题? -
@JacobIRR 我们稍后会将其打包成可执行文件,因此不想使用太多库来存储内存
-
问题是
copyfile不会创建任何不存在的目录,而不是你如何表示路径。
标签: python python-3.x string backslash shutil