在Python中處理路徑斜槓問題

出自 YTYZX有图有真相的百科
於 2022年1月22日 (六) 15:45 由 123.138.24.106 (對話) 所做的修訂
(差異) ←上個修訂 | 最新修訂 (差異) | 下個修訂→ (差異)
前往: 導覽搜尋
微软Windows系统在文件夹名称间使用反斜杠(\),其他操作系统均使用正斜杠(/),在Python中可以使用以下方法处理。
用Python读取文件时,'\'是Python的转义字符,如果路径中存在'\t'或者'\r'这样的特殊字符,'\'就无法起到目录跳转的作用,从而报错。解决办法如下:
例如要读取C盘temp目录下的ytyzx.txt这个文本文件。
path0 = c:\temp\ytyzx.txt 将报错,因为Python认为c:后面的\t是制表符。
     报错信息类似下面:handle = open(OSError: [Errno 22] Invalid argument: 'c:\temp\\ytyzx.txt'
正确写法如下:
path = r"C:\temp\ytyzx.txt"     # 在前面加上字母r,则视为通知Python,后面的内容为原始字符串,不对“\t”,“\r”等进行字符串转义。
path1 = r"c:\temp\ytyzx.txt"    # Windows系统大小写不敏感。
path2 = "c:\\temp\ytyzx.txt"    # 在temp前面再加一个反斜杠(\),即用第一个斜杠取消第二个斜杠的转义功能。
path3 = "c:/temp/ytyzx.txt"     # 在反斜杠(\)替换为正斜杠(/)。