小白學PYTHON時最容易犯的6個錯誤,看看你遇到過幾個
最近又在跟之前的同學一起學習python,一起進步,發現很多測試同學在初學python的時候很容易犯一些錯誤,特意總結了一下。其實這些錯誤不僅是在學python時會碰到,在學習其他語言的時候也同樣會碰到。
錯誤1: 縮進
python是強制縮進的語言,很多同學在初次接觸python時可能會不習慣,縮進老是犯錯。比如
Python 2.7.12 (default, Sep 17 2016, 13:47:40)[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwinType "help", "copyright", "credits" or "license" for more information.>>> good = "ok" File "<stdin>", line 1 good = "ok" ^IndentationError: unexpected indent
這種錯誤一般會提示IndentationError
,最後根據錯誤所在行一般都能夠很快的解決問題。
錯誤2: 中英文符號
很多初學者是分不清中英文符號的區別的,比如說:
這是英文的冒號,而:
這個冒號是中文的。乍一看長得差不多,但實際上確實不同的字元。比如
>>> x = 0>>> if x == 1: File "<stdin>", line 1 if x == 1: ^SyntaxError: invalid syntax
上面的錯誤很明顯,語法錯誤,冒號有問題。作為初學者,下面這些符號在輸入的時候你可能需要警惕一些
- 英文逗號
- 英文冒號
- 英文小括弧
- 英文中括弧
符號不準確的情況下,一般python解釋器會提示SyntaxError
,遇到這個錯誤不要怕,想辦法解決就好。
錯誤3:拼寫錯誤
因為我們的母語不是英文,所以很多時候我們會把單詞拼寫錯誤而覺察不到。比如
>>> word = "hello world">>> print(world)Traceback (most recent call last): File "<stdin>", line 1, in <module>NameError: name world is not defined
上面的情況python抱怨道:world
這個變數沒有定義, 很顯然我們定義變數名是word
。一些同學甚至會將hello world
錯拼成是hello word
,可見對微軟的office套件愛的深沉。
錯誤4:代碼塊忘了冒號
python的很多代碼塊結構是需要冒號的,這個我最初非常不習慣,老是忘記寫,比如
>>> if 1 == 2 File "<stdin>", line 1 if 1 == 2 ^SyntaxError: invalid syntax
這裡if後面要跟冒號來引出下面的代碼塊。忘記冒號的時候一般會報語法錯誤。
錯誤5: IDE綜合症
有些同學喜歡一開始就使用IDE,因為一些不錯的IDE是有語法錯誤提示的,所以當你敲錯了以後,代碼編輯器內可能充斥著紅色或黃色的波浪線,不過有時候這些線可能不是很準確,就導致大家有些手足無措,不敢放心大膽敲代碼,漸漸的挫敗感累積,然後放棄。
另外很多同學喜歡在IDE內直接運行python代碼,導致很多時候傳參不便,無法得到想要的結果。
其實新手可以先土一點,嘗試不用IDE,等熟練一些了再使用也不遲。
錯誤6:只看不寫或者只寫不看
有些同學只看書,不寫代碼,結果除了疑惑越來越多以外,代碼能力提升速度其實有限
有些同學只寫代碼,不看別人寫的代碼,結果一些常見套路不會,進步速度也有限
代碼其實要多看,多看別人寫的代碼,python標準庫里的代碼儘管不容易,但是可以看一下,github上的一些開源項目,也可以找一些簡單的來看;寫一些能讓自己有成就感的代碼,從簡單的開始,逐漸複雜,循序漸進。
綜上,讀完這邊文章,你應該了解這些點
- SyntaxError: invalid syntax:這是語法錯誤
- IndentationError: unexpected indent: 這是縮進錯誤
- NameError: name world is not defined: 這是變數沒定義
- 出錯沒關係,解決掉就好了
- 代碼要多看多寫
- 萬事開頭難,堅持到最後才有收穫
推薦閱讀: