前記
用了一段時間python語言,結合在開發中的使用,自己又有新的感悟,使用別人的框架是帶著鐐銬的舞蹈,思想在基礎里早已體現,借此加深理解、溫故知新,
小僧很想和同行的朋友溝通交流、并肩前行,志同道合的朋友看過來嘍!
1
python使用物件模型來存盤資料,構造任何型別的值都是一個物件,
所有python物件都擁有三個特性:身份、型別和值
- 身份
每一個物件都有唯一的身份標識自己,任何物件的身份可以使用內建函式id(obj)來得到,這個值可以被認為是物件的記憶體地址, - 型別
物件的型別決定了該物件可以保存什么型別的值,可以進行什么樣的操作,以及遵循什么樣的規則,你可以用內建函式type(obj)查看物件型別,因為在python中型別也是物件,所以type()回傳的是物件,而不是簡單的字串, - 值
物件表示的資料項,
物件屬性
某些python物件有屬性、值或相關聯的可執行代碼,python用.標記法來訪問屬性,
標準型別
- 數字型別 整型、長整型、浮點型、布爾型、復數型
- 字串型別
- 串列
- 元組
- 字典
這些型別是python內建的基本資料型別,
其他內建型別
- 型別
- Null物件none
- 檔案
- 集合
- 函式
- 模塊
- 類
型別
物件的一系列固有行為和特性必須實作定義好,從這個角度看,型別是保存這些資訊的最佳位置,
>>> type(666)
<class 'int'>
>>> type(type(666))
<class 'type'>
>>> type(666)
<class 'int'>
>>> type(type(666))
<class 'type'>
所有型別物件的型別都是type,它也是所有python型別的根和所有python標準型別的默認元類,
None
python中的Null物件,它只有一個值,那就是None,不支持任何運算也沒有內建方法,None沒有什么有用的屬性,他的布林值總是False,
內部型別
- [代碼物件]
- 幀
- 跟蹤記錄
- 切片
標準型別運算子
物件值的比較
不同于其他編程語言,多個比較操作可以在同一行進行,比較順序為從左到右
>>> 3 < 4 < 7 #same as (3<4) and (4<7)
True
>>> 3 < 4 < 1
False
比較運算子是針對物件的值進行比較,不是物件本身,
物件身份比較
>>> a=b=10
>>> a is b
True
>>> a is not b
False
>>> id(a)==id(b)
True
a is b 等價于 id(a)==id(b)
python中是通過參考傳遞處理物件,每個物件天生具有一個計數器,記錄自己的參考次數,這個數目表示有多少個變數指向該物件,python提供is和is not兩個運算子來判斷兩個變數是否指向同一個物件,
布爾型別
布爾型別運算子都是python關鍵字,優先級順序是:not>and>or
后續...
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/159112.html
標籤:Python
