python3語法(下)易錯點

2021-10-23 15:10:22 字數 1421 閱讀 2364

邏輯運算子優先順序

not and or 運算子從高到低

python 中的 and 從左到右計算表示式,若所有值均為真,則返回最後乙個值,若存在假,返回假值;

or 也是從左到右計算表示式,返回第乙個為真的值;

python無自增運算子a++,正確的自增操作應該 a = a + 1 或者 a += 1,python 中,變數是以內容為基準而不是像 c 中以變數名為基準,所以只要你的數字內容是一樣,不管你起什麼名字,這個變數的 id 是相同的,同時也就說明了 python 中乙個變數可以以多個名稱訪問

is 判斷兩個變數是否是引用同乙個記憶體位址。

== 判斷兩個變數是否相等。

進製轉換

轉換方法:

取四合一法:從二進位制小數點為分隔符,向左或向右每四位二進位制合為一位十六進製制。換算時不足四位的情況,可以向左或向右補0。

5.浮點數在計算機中的表示:「4舍6入5看齊,奇進偶不進」

6.元組本身是不能被修改的,但若是硬要改 ,有以下方法

7.s.update( 「字串」 ) 與 s.update( ) 含義不同:

s.update( ) 將字串新增到集合中,有重複的會忽略。

s.update( 「字串」 ) 將字串拆分單個字元後,然後再乙個個新增到集合中,有重複的會忽略。

8.while 迴圈語句和 for 迴圈語句使用 else 的區別:

(1)如果 else 語句和 while 迴圈語句一起使用,則當條件變為 false 時,則執行 else 語句。

(2)如果 else 語句和 for 迴圈語句一起使用,else 語句塊只在 for 迴圈正常終止時執行!

9.什麼情況下需要使用 yield?

乙個函式 f,f 返回乙個 list,這個 list 是動態計算出來的(不管是數學上的計算還是邏輯上的讀取格式化),並且這個 list 會很大(無論是固定很大還是隨著輸入引數的增大而增大),這個時候,我們希望每次呼叫這個函式並使用迭代器進行迴圈的時候乙個乙個的得到每個 list 元素而不是直接得到乙個完整的 list 來節省記憶體,這個時候 yield 就很有用。

10.不可變型別:類似 c++ 的值傳遞,如 整數、字串、元組。如 fun(a),傳遞的只是 a 的值,沒有影響 a 物件本身。如果在 fun(a))內部修改 a 的值,則是新生成來乙個 a。

可變型別:類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改後 fun 外部的 la 也會受影響

python 中一切都是物件,嚴格意義我們不能說值傳遞還是引用傳遞,我們應該說傳不可變物件和傳可變物件。

JS基本語法易錯點

識別符號區塊 switch結構 迴圈結構 根據是否需要得到返回值使用 語句一般情況不需要返回值,表示式為了得到返回值,一定會返回乙個值。1.如果只是宣告變數而沒有賦值,則該變數的值是undefined。undefined是乙個特殊的值,表示 無定義 例如 var a a undefined 若未宣告...

Python易錯點總結

三個單引號 或者雙引號 既可以注釋也可以當作字串。python 中的淺拷貝只拷貝父物件不拷貝子物件,深拷貝父物件子物件全部拷貝。import copy a 1,2,3,4,a b b a c copy.copy a d copy.deepcopy a 5 a 4 c python中的命名方式 參考 ...

Python易錯點總結

1.定義只有乙個元素的元組必須要加逗號,否則只是乙個數.tuple 1,print tuple 2.對於列表和元組,下標值為 1都代表是最後乙個元素的下標,2代表倒數第二個元素的下標,依次類推.print list 1 print tuple 1 3.元組和列表的不同之處在於,元組一經初始化後就不能...