有些萌新在初次使用python導入文件時,可能會遇到遇到各種各樣的報錯。今天我們就來講講其中最常見的一種報錯---轉義字符“\”沖突。
問題重述:
比如像下面這樣,當我們想導入一個常見的csv文件時,發現居然報了這樣一個錯誤:
df1= pd.read_csv('C:\Users\Administrator\Desktop\adult.csv')
具體錯誤描述:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
下面我來解釋一下報這個錯誤的原因:
出現上述這個錯誤,是因為我們使用了“ \ ”這個字符。在我們的python中,“ \ ”這個字符還有著一種特殊的用途,它同時也包含有轉義的含義。在我們使用“ \ ”這個字符時,如果不注意,就很容易導致我們python與正則表達式的語法沖突。
小科普:(轉義的具體含義是什么)
舉個例子,比如說:
在我們使用python輸出結果時,當我們使用 \t ,可以表示一個Tab空格的距離;當我們使用 \n 時,可以代表換行,當然了,“ \ ”更多地是用法是體現在正則表達式的語法中,這里我們就不多加拓展了。
既然現在我們已經知道出現這個報錯的原因了,所以我們就需要采取一些方式,使得我們在使用“ \ ”導入文件時,不被解讀為轉義字符。
具體的解決方法有以下三種:
一、在路徑前面加r,這種方法能夠使字符保持原始的意思。
df = pd.read_csv(r'C:\Users\Administrator\Desktop\adult.csv')
二、將反斜杠“\”替換為正斜杠
df3= pd.read_csv('C:/Users/Administrator/Desktop/adult.csv')
三、將反斜杠“\”替換為雙反斜杠“\\”
df2= pd.read_csv('C:\\Users\\Administrator\\Desktop\\adult.csv')
以上三種做法,均能解決因轉義字符“\”而出現導入文件報錯的問題。需要的小伙伴可以記一下筆記~
以上便是的內容,感謝大家的細心閱讀,同時歡迎感興趣的小伙伴一起討論、學習,想要了解更多內容的可以看我的其他文章,同時可以持續關注我的動態~