Python Windows文件路径中的反斜杠?
在Python for WIndows中将字符串设置为文件路径时,是否需要将其格式化为:Python Windows文件路径中的反斜杠?,python,windows,Python,Windows,在Python for WIndows中将字符串设置为文件路径时,是否需要将其格式化为: C:\\Users\\ 或者转义不适用于Windows?我的脚本当前在导入操作系统的行中提供了类似“非ASCII字符”的内容,因此我无法真正测试这一点。尝试添加一个“r”,执行以下操作: path = r"C:\mypaht\morepaht\myfie.file" 尝试添加一个“r”,执行以下操作: path = r"C:\mypaht\morepaht\myfie.file" 简短回答:按照gni
C:\\Users\\
或者转义不适用于Windows?我的脚本当前在导入操作系统的行中提供了类似“非ASCII字符”的内容,因此我无法真正测试这一点。尝试添加一个“r”,执行以下操作:
path = r"C:\mypaht\morepaht\myfie.file"
尝试添加一个“r”,执行以下操作:
path = r"C:\mypaht\morepaht\myfie.file"
简短回答:按照gnibbler的建议使用正斜杠
关于使用原始字符串:
使用原始字符串通常可以很好地工作,但是您必须注意,r“\”
转义quoute字符。也就是说,原始字符串不是绝对原始的,这就是为什么您不能在类似“\”
的字符串末尾使用反斜杠(或任何奇数个反斜杠)(反斜杠将转义以下引号字符)的原因
[9]中的:a=r'\\'
在[10]中:b=r'\\\'
文件“”,第1行
b=r'\\\'
^
SyntaxError:扫描字符串文字时下线
在[11]中:a
Out[11]:“\\\\\”
简短回答:按照gnibbler的建议使用正斜杠
关于使用原始字符串:
使用原始字符串通常可以很好地工作,但是您必须注意r“\”
转义quoute字符。也就是说,原始字符串不是绝对原始的,这就是为什么不能在字符串末尾使用反斜杠(或任何奇数个反斜杠)的原因,如'\'
(反斜杠将转义以下引号字符)
[9]中的:a=r'\\'
在[10]中:b=r'\\\'
文件“”,第1行
b=r'\\\'
^
SyntaxError:扫描字符串文字时下线
在[11]中:a
Out[11]:“\\\\\”
您不应该以这种方式构造文件路径。它不可移植且容易出错
使用os.path中的函数
import os.path
path = os.path.join('C:', 'Users', 'name')
您不应该以这种方式构造文件路径。它不可移植且容易出错
使用os.path中的函数
import os.path
path = os.path.join('C:', 'Users', 'name')
对我来说很有用我想:f=open(“C:\a\a.txt”)Traceback(最近一次调用last):File“”,第1行,在IOError:[Errno 22]无效模式('r')或文件名:'C:\x07\x07.txt'f=open(r“C:\a\a.txt”)@DanielSanchez,原始字符串不能以“\”@gnibler结尾,但如果我想要一个子目录,我可以做newpath=r”%s\something
(假设我的文件是一个目录)对我来说是有效的,我想:f=open(“C:\a\a.txt”)回溯(最近一次调用):File“”,第1行,在IOError:[Errno 22]无效模式('r')或文件名:'C:\x07\x07.txt'f=open(r“C:\a\a.txt”)@DanielSanchez,原始字符串不能以“\”@gnibbler结尾,但如果我想要一个子目录,我可以做newpath=r%s\something“
(假设我的文件是一个目录)您可以只使用正斜杠而不使用正斜杠您可以只使用正斜杠而不使用正斜杠这会自动在Windows上使用反斜杠,并在其他操作系统上使用斜杠吗?这会自动在Windows上使用反斜杠,并在其他操作系统上使用斜杠吗?