2017-04-24 93 views
-3

當使用Python執行它顯示錯誤:語法錯誤:在標識符無效字符

return (x * (1.0 — x)) 
       ^
SyntaxError: invalid character in identifier 

如何糾正呢?

+0

這個問題可能會引起很多程序員的警惕(尤其是如果他們正在複製代碼,這很糟糕,但我們都偶爾會這樣做)。除非它是重複的,否則我認爲它不應該被降低。 – Sawyer

回答

0

假設1.0x之間的字符應該是負號,請將其替換爲實際負號。

5

使用正確的字符爲你減運算符:-。你正在使用一些其他的「破折號」字符,口譯員正在考慮只是一個名字,如yx。但它是無效的!

>>> bad_minus = "—" 
>>> good_minus = "-" 
>>> bad_minus == good_minus 
False 
>>> ord(good_minus) 
45 
>>> ord(bad_minus) 
8212 
>>> 
+0

謝謝,我有同樣的問題,但有一個我錯誤添加的非易碎空間。你的'ord'想法幫助我調試:) – seniorpreacher

0

你的減號不是負數。這是一個「破折號」。 嘗試用'-'替換'—'