Python入門學習筆記(day1)

2021-10-09 16:04:58 字數 1478 閱讀 4448

位運算1.在注釋中,#只能表示單行的注釋,而如果要注釋區間(多行注釋),則需要用到三引號,這個地方使用三單引或者三雙引都可以。

1.關於算術運算子,除了規則的四則運算+*-/外,還有一些像整除運算子//、冪運算子**等都是非常常用的運算子,它們可以幫助我們在一些例如求最大公約數以及一些算術表示式的結果時簡化很多不必要的步驟。

2.位運算在一些高階的程式當中也會時常出現,作為了解,需要記憶一些基本位運算子。

3.還有一些其他運算子,例如in是存在的意思。

is運算子一般用於對比兩個變數的記憶體位址,如「a is b"。

注意:如果是位址不可變型別如str,那麼is等價於==,is not等價於!=。

4.重點記憶運算子優先順序,如果優先順序混亂,可能會導致運算結果偏差嚴重。

(1)一元運算子優於二元運算子。例如3 ** -2等價於3 ** (-2)。

(2)先算術運算,後移位運算,最後位運算。例如 1 << 3 + 2 & 7等價於 (1 << (3 + 2)) & 7。

(3)邏輯運算最後結合。例如3 < 4 and 4 < 5等價於(3 < 4) and (4 < 5)。

1.保留小數點操作:如果要保留浮點型小數點後n位,使用demic包裡的decimal 物件和 getcontext() 方法來實現。

也可以使用getcontext().prec來調整精度。

2.獲取型別資訊 type(object)

需要注意的是:type() 不會認為子類是一種父類型別,不考慮繼承關係,isinstance() 會認為子類是一種父類型別,考慮繼承關係。

1.二進位制表示形式解釋。

原碼:就是其二進位制表示。

反碼:正數的反碼就是原碼,負數的反碼是符號位不變,其餘位取反。

補碼:正數的補碼就是原碼,負數的補碼是反碼+1。

2.利用位運算子的快速計算。

(1)如果要快速計算2的倍數問題,除了使用傳統的乘法運算子*2,還可以利用計算機的二進位制機制,使用位運算子<>來完成這一操作。

(2)如果要快速交換兩個整數,除了傳統的定義乙個中間變數將兩數交換之外,python中有特定的符號^可用來快速交換。

3.請注意:

(1)python中bin乙個負數(十進位制表示),輸出的是它的原碼的二進位制表示加上個負號。

(2)python中的整型是補碼形式儲存的。

(3)python中整型是不限制長度的不會超範圍溢位。

所以為了獲得負數(十進位制表示)的補碼,需要手動將其和十六進製制數0xffffffff進行按位與操作,再交給bin()進行輸出,得到的才是負數的補碼表示。

Python入門學習筆記(day2)

1.if是常用的條件語句,但只有當if後面的條件為真時,下面的語句才能夠繼續執行,否則不執行,在if語句中可以通過布林操作符來實現多重條件判斷。2.在新增了else後,就可以進行當if條件是false時應該執行的操作。需要注意的是由於python沒有大括號來標明 邊界,所以要注意else的懸掛問題。...

python學習筆記day1 基礎入門

區別一 python2預設的編碼方式是ascaii碼 解決方式在檔案首部加 encoding utf 8 python3預設的編碼方式是utf 8 變數 1.python變數必須由數字,字母,下劃線組成,且不能又數字開頭。2.不能是python中的關鍵字 and as assert break cl...

python入門學習day01

基礎爬蟲知識入門 01 匯入模組 import urllib.request 爬取的目標網頁 file urllib.request.urlopen 讀取全部網頁,file.readline讀取行 data file read print data 開啟路徑,wb表示以二進位制方式寫入 write方...