乾貨|學Python,請避開這些坑!

學Python時,我們總是會遇到一些奇奇怪怪的問題。為了避免您也會遇到此類問題,我們選取了《Python實戰圈》的部分常見錯誤彙總。閒話不多說,直接上乾貨。

點擊關注,私信發送“資料”“Python”就可獲得Python學習資料


具體如下:

'xxx' is not defined



乾貨|學Python,請避開這些坑!


原因: 此類問題是因為 沒有定義變量

解決方法: 定義錯誤提出的變量,本例子中 添加add變量

SyntaxError: invalid syntax



乾貨|學Python,請避開這些坑!


原因: 此類因為 代碼不符合python語法格式

解決方法:找到錯誤的語句,然後根據python定義修改語法。本例子中,def 沒有空格 與init

python註釋不需要反斜槓/



乾貨|學Python,請避開這些坑!


原因:您肯定是老碼農,java 或者c語言轉過來的。python的註釋代碼是 #或者"""

解決方法:去掉/ 。

注意事項:學習python的時候,一定要忘記java等其他語言的語法

Unresovled referrence 'self'



乾貨|學Python,請避開這些坑!


原因:python語法是以冒號結尾,而不是分號。該類問題也是老程序員常見的問題,java 等語言的結束需要; 而python是冒號

解決方法:修改分號為冒號

‘str’ object is not callable



乾貨|學Python,請避開這些坑!



原因:可能你前面有str變量,不要用關鍵字作為變量名

解決方法:找到str的變量名,然後修改名字

點擊關注,私信發送“資料”“Python”就可獲得Python學習資料


縮進問題


和其他語言的語法最大的不同就是,Python不能用括號來表示語句塊,也不能用開始或結束標誌符來表示,而是靠縮進來區分代碼塊的。

常見的錯誤用法:

(1)

print('Hello')
print('World!')

錯誤是第二行的縮進會導致兩個print語句是包含和被包含的關係,但他們兩者是屬於同一個代碼塊的,所以應該寫成;

print('Hello')
print('World!')

(2)

if spam == 42:
print('Hello')
print('World!')

錯誤是第三行的縮進,改正的方法有兩種,一是如果兩個print語句是屬於同一代碼塊的,應該改正為

if spam == 42:
print('Hello')
print('World!')

二是如果第三行的print語句是和if語句是同一級的,則改正為

if spam == 42:
print('Hello')
print('World!')

(3)在Python 3中,縮進的時候,不能Tab和空格混用,每個縮進層次應該選擇只使用Tab或者只使用空格。


分享到:


相關文章: