Ben*_*min 1 python windows path
在Windows XP,Python 2.6.6上使用os.path获得意外结果:
a = "D:\temp\temp.txt"
os.path.dirname(a)
>>> 'D:' # Would expect 'D:\temp'
os.path.normpath(a)
>>> 'D:\temp\test.txt'
os.path.basename(a)
>>> '\temp\test.txt' #Would expect 'test.txt'
a.replace("\\", "/")
>>>'D:\temp\test.txt' # Would expect 'D:/temp/test.txt'
Run Code Online (Sandbox Code Playgroud)
有人可以解释发生了什么吗?我怎样才能获得正确/预期的行为?为什么我不能用前斜线替换反斜杠?
编辑:我从wxPython应用程序中的文本字段获取此路径,因此它是一个带有未转义的反斜杠的字符串,我似乎无法用"替换"替换它们.
你没有逃脱你的反斜杠.使用\\代替\或使用原始字符串,例如:
a = r"D:\temp\temp.txt"
Run Code Online (Sandbox Code Playgroud)
在未转义的字符串中,它\t被解释为制表符.
| 归档时间: |
|
| 查看次数: |
469 次 |
| 最近记录: |