相比于其他語言,Python 的語法比較簡單易學,但一旦不注意細節,剛入門的新手就會掉進語法錯誤的坑里,今天給大家講幾個平常比較容易掉的“坑”,
1、忘記寫冒號
在 if、elif、else、for、while、class、def 陳述句后面忘記添加 “ : ”
2、誤用 “=” 做等值比較
“=”是給變數賦值,“==”才是判斷兩個值是否相等:
改正:
3、變數沒有定義
會導致:“NameError: name ‘age’ is not defined.”
改正:
4、字串與非字串連接
錯誤:
非字串和字串連接的時候,要將非字串轉換為字串型別之后才能連接,
改正:
大家來猜一猜輸出
1 + int(‘1’)
‘1’ + str(1)
會有怎樣不同的結果呢?
1 + int(‘1’) 輸出的結果是 2,
‘1’ + str(1) 的輸出結果是 11,
5、串列的索引位置
有些同學會習慣性地認為串列元素的位置是從 1 開始的:
系統這時就會提示:“list index out of range.”
可別忘了,串列元素的位置是從 0 開始的,所以第 3 個元素 “mouse” 的索引位置是 2,
改正:
6、使用自增 “++” 自減 “–”
學過 C 語言或者 Java 的人會很習慣使用i++或者i–,但在 Python 中是沒有自增自減運算子的:
這時可以使用 “+=” 來代替 “++”
改正:
7、 使用關鍵字命名變數
Python 3 中一共 33 個關鍵字:
👉False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,raise,return,try,while,with,yield👈
自定義變數時,變數名不能和這些關鍵字重復,
8、 索引元素位置時忘記呼叫 len 方法
通過索引位置來獲取串列元素時,忘記要先使用 len 函式來獲取串列的長度:
改正:
9、函式中的區域變數賦值前被使用:
第一行定義了一個全域變數 num ??函式 myFunction( )也定義了一個同名的區域變數??程式執行時是先查找區域變數的??在函式中找到 num 之后就不到外部查找了??此時就會出現 print 的時候變數 num 還沒賦值的錯誤,
10、縮進問題
和其他語言的語法最大的不同就是,Python 不能用括號來表示陳述句塊,也不能用開始或結束標志符來表示,而是靠縮進來區分代碼塊的,
常見的錯誤用法:
(1)第一種
錯誤是第二行的縮進會導致兩個print陳述句是包含和被包含的關系,但他們兩者是屬于同一個代碼塊的,所以應該寫成:
(2)第二種
錯誤是第三行的縮進,改正的方法有兩種,
一是如果兩個 print 陳述句是屬于同一代碼塊的,應該改正為:
二是如果第三行的 print 陳述句是和 if 陳述句是同一級的,則改正為:
(3)第三種
在Python 3 中,縮進的時候,不能 Tab 和空格混用,每個縮進層次應該選擇只使用 Tab 或者只使用空格,
你遇到Python最容易入的坑是什么,留言區侃侃!
最后: 大家可以去我博客首頁看下側邊欄! 進去有許多資料共享!資料都是面試時面試官必問的知識點,也包括了很多測驗行業常見知識,其中包括了有基礎知識、Linux必備、Shell、互聯網程式原理、Mysql資料庫、抓包工具專題、介面測驗工具、測驗進階-Python編程、Web自動化測驗、APP自動化測驗、介面自動化測驗、測驗高級持續集成、測驗架構開發測驗框架、性能測驗、安全測驗等,
好文推薦
轉行面試,跳槽面試,軟體測驗人員都必須知道的這幾種面試技巧!
面試經:一線城市搬磚!又面軟體測驗崗,5000就知足了…
面試官:作業三年,還來面初級測驗?恐怕你的軟體測驗工程師的頭銜要加雙引號…
什么樣的人適合從事軟體測驗作業?
那個準點下班的人,比我先升職了…
測驗崗反復跳槽,跳著跳著就跳沒了…
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/295581.html
標籤:其他