2017-09-27 177 views
-1

字節這是我的代碼,但結果不是我想要的,編解碼器不能解碼在Python

def read_message(): 

    quotes = open("C:\Users\Administrator\Desktop\movie_quotes.txt") 
    read_file = quotes.read() 
    print(read_file) 
    quotes.close() 

read_message() 

結果表明:

File "E:/Python/p1/send_message.py", line 4 
quotes = open("C:\Users\Administrator\Desktop\movie_quotes.txt") 
      ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape 

而且我不明白確切的意思。 我的python版本是3.5.3。

回答

1

您需要使用原始字符串,加倍您的斜線或改用正斜線:

r'C:\Users\Administrator\Desktop\movie_quotes.txt' 'C:\\Users\\Administrator\\Desktop\\movie_quotes.txt' 'C:/Users/Administrator/Desktop/movie_quotes.txt'

0

你必須使用雙斜線,像這樣:

quotes = open("C:\\Users\\Administrator\\Desktop\\movie_quotes.txt"), 

或正斜線:

quotes = open("C:/Users/Administrator/Desktop/movie_quotes.txt") 
+0

這不會導致「unicode錯誤」。 –

+0

它肯定會。 –

1

您有SyntaxError。這意味着錯誤在你的源代碼本身,而不是在執行過程中發生的。

在您的代碼中,「\Users」中的「\U」被解釋爲long Unicode literal的開頭。將反斜槓加倍或使用原始字符串文字來修正其他人的建議。

相關問題