pycharm 中 ‘unicodeescape’ codec can’t decode bytes in position XXX: trun錯誤解決方案背景描述


 

今天在運用Pycharm時遇到一個錯誤

  SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape(Unicode unicodeescape”錯誤)的編解碼器不能解碼的字節的位置:在2~3 uxxxxxxxx截斷

 

剛開始以為是不識別,於是在python文件的頭部加上

#-- coding:utf-8 --

 

但是加完這個還是報錯一臉懵逼呀。

 

后來在其他文件上操作,原來是路徑寫的 有問題,錯誤代碼如下

 

f=('C:\Users\Administrator\PycharmProjects\untitled\full.log')

正確結果

f=('C:\Users\Administrator\PycharmProjects\untitled\full.log')

或者

f=open(r'C:\Users\Administrator\PycharmProjects\untitled\full.log')date= f.read()print(date)

原因:

window 讀取文件可以用\,但是在字符串中\是被當作轉義字符來使用,所以’d:\a.txt’會被轉義成’d:\a.txt’這是正確路徑,所以不會報錯。

而‘C:\Users\FrankYuan\Pictures\Camera Roll\WIN_20161010_08_51_57_Pro.jpg ’中經過轉義之后可能就找不到路徑的資源了,例如\t可能就轉義成tab鍵了。

 

解決辦法python在描述路徑時可以有多種方式,現列舉常見的三種

 

方式一:轉義的方式'd:\a.txt'方式二:顯式聲明字符串不用轉義'd:r\a.txt'

方式三:使用Linux的路徑/'d:/a.txt'

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM