python_1
Python解釋器
CPython
C語言開發的Python解釋器,最廣泛
IPython
一個互動式、功能增強的CPython
Pypy
Python語言寫的Python解釋器,JIT技術,動态編譯Python代碼
Jpython
Python的源代碼編譯為Java的位元組碼,跑在JVM上
IronPython
與Jython類似,運作在.Net平台上的解釋器,Python代碼被編譯成.Net的位元組碼
Python基礎文法
python的語言類型(動态、強類型)
靜态編譯語言
事先聲明變量類型,類型不能再改變
編譯時檢查類型
動态編譯語言
不用事先聲明類型,随時可以指派為其他類型
程式設計時不知道是什麼類型,很難推斷
強類型語言
不同類型之間操作,必須先強制類型轉換為同一類型.
弱類型語言
不同類型間可以操作,自動隐式轉換,JavaScript中console.log(1+'a')
注釋— # 标注文本
數字
整數,不區分long和int
進制0xa、0ob10、0b10
bool,True、False
浮點數
複數
字元串
字首r或R,把裡面的所有字元當普通字元對待
轉義序列
縮減
續行
辨別符
常量
字面常量
變量
運算符
算術運算符
位運算符
原碼,反碼,補碼,負數表示法
比較運算符
==,!= 可做不同類型值的比較,其餘不可
邏輯運算符
指派運算符
身份運算符
運算符優先級
表達式
算數表達式
邏輯表達式
指派表達式
指派即定義
記憶體管理
記憶體回收以及記憶體碎片整理
程式控制
順序
分支
循環
真值表
非零為真,非None為真,非'空集合'為真
空集合:
空字元串
空字典
空清單
空元組
總結:
計算機傳回給使用者是原碼
補碼的補碼為原碼
5 - 1 = 5 + (-1)
0000 0101 5
1000 0001 -1(原)
1111 1111 -1(補碼)
結果: 10000 0100 舍棄第九位得結果0000 0100,表示0b100
~12 = ?
~:按位非
0000 1100 12(原)
~
1111 0011 負數(負數在計算機中使用補碼存儲,需要轉換為原碼輸出)
1000 1101 -13(原碼)
結果: ~12=-13
10^9=?
10^-9=?
^ 按位異或
0000 1010 10(原碼)
0000 1001 9(原碼)
^ 操作
0000 0011 3(原碼)
0000 1010 10(原碼)
1000 1001 -9(原碼)
^ 操作
1000 0011 -3(原碼)
結果: 10^9=3,10^-9=-3