我正在尝试使用Python中的一些长文件路径(Windows)并遇到一些问题。在阅读问题here之后,看起来我需要将'\\?\'附加到我的长文件路径的前面,以便将它们与os.stat(文件路径)一起使用。我遇到的问题是我无法在Python中创建以反斜杠结尾的字符串。问题here指出你甚至不能用一个'\'字符结束Python中的字符串。
是否有任何Python标准库或其他任何地方可以将'\\?\'附加到您已有的文件路径的前面?或者是否有任何其他解决方案在Windows中使用Python处理长文件路径?这似乎是一件很简单的事情,但我无法理解我的生活。
答案 0 :(得分:3)
“\\\\?\\”应该准确地提供你想要的字符串。
更长的答案:当然,您可以使用反斜杠在Python中结束字符串。当它是一个“原始”字符串(一个前缀为'r')时,你就是不能这样做。您通常用于包含(大量)反斜杠的字符串(以避免臭名昭着的“倾斜牙签”综合症; - )
答案 1 :(得分:0)
即使使用原始字符串,您也可以使用反斜杠结尾:
>>> print r'\\?\D:\Blah' + '\\'
\\?\D:\Blah\
甚至:
>>> print r'\\?\D:\Blah' '\\'
\\?\D:\Blah\
因为Python将文字字符串连接成一个字符串。