python報(bào)錯SyntaxError: (unicode error) 'unicodeescape' codec can't
報(bào)錯:SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
原因
window 讀取文件可以用\,但是在字符串中\(zhòng)是被當(dāng)作轉(zhuǎn)義字符來使用,經(jīng)過轉(zhuǎn)義之后可能就找不到路徑的資源了,例如\t會轉(zhuǎn)義為tab鍵
總結(jié)有三種方法:
一:更換為絕對路徑的寫法
func1("C:\\Users\\renyc")
二:顯式聲明字符串不用轉(zhuǎn)義(加r)
func1(r"C:\Users\renyc")
三:使用Linux的路徑/
func1("C:/Users/renyc")
明確一個文件所在的路徑,有 2 種表示方式,分別是:
絕對路徑:總是從根文件夾開始,Window 系統(tǒng)中以盤符(C:、D:)作為根文件夾,而 OS X 或者 Linux 系統(tǒng)中以 / 作為根文件夾。
相對路徑:指的是文件相對于當(dāng)前工作目錄所在的位置。例如,當(dāng)前工作目錄為 "C:\Windows\System32",若文件 demo.txt 就位于這個 System32 文件夾下,則 demo.txt 的相對路徑表示為 ".\demo.txt"(其中 .\ 就表示當(dāng)前所在目錄)。
相對路徑表示某文件所在的位置時,除了經(jīng)常使用 .\ 表示當(dāng)前所在目錄之外,還會用到 ..\ 表示當(dāng)前所在目錄的父目錄。?
標(biāo)簽: