1.全部的Python 對像都擁有三個特性:身份,類型和值。緩存
身份:
每個對象都有一個惟一的身份標識本身,任何對象的身份可使用內建函數id()來獲得。
這個值能夠被認爲是該對象的內存地址。您極少會用到這個值,也不用太關心它到底是什麼。函數
2.類型也是一種對象code
>>> type(42) <type 'int'> >>> type(type(42)) <type 'type'>
3. 整數對象和 字符串對象是不可變對象,因此Python 會很高效的緩存它們。對象
Python 僅緩存簡單整數,由於它認爲在Python 應用程序中這些小整數會常常被用到。目前,Python 緩存的整數範圍是(-1, 100),不過這個範圍是會改變的,因此請不要在你的應用程序使用這個特性。內存
4.標準類型構建函數字符串
函數 功能
cmp(obj1, obj2) 比較 obj1 和 obj2, 根據比較結果返回整數 i:
i < 0 if obj1 < obj2
i > 0 if obj1 > obj2
i == 0 if obj1 == obj2
repr(obj) 或 `obj` 返回一個對象的字符串表示
str(obj) 返回對象適合可讀性好的字符串表示
type(obj) 獲得一個對象的類型,並返回相應的type 對象容器
注:str()函數獲得的字符串可讀性好, 而repr()函數獲得的字符串一般能夠用來從新得到該對象, 一般狀況下 obj == eval(repr(obj)) 這個等式是成立的。須要提醒一下的是, 並非全部repr()返回的字符串都可以eval()內建函數獲得原來的對象。也就是說 repr() 輸出對 Python 比較友好, 而str()的輸出對人比較友好。基礎
5.Python 不支持方法或函數重載, 所以你必須本身保證調用的就是你想要的函數或對象。程序
6.類型工廠函數方法
Python 2.2 統一了類型和類, 全部的內建類型如今也都是類, 在這基礎之上, 原來的所謂內建轉換函數象int(), type(), list() 等等, 如今都成了工廠函數。 也就是說雖然他們看上去有點象函數, 實質上他們是類。當你調用它們時, 其實是生成了該類型的一個實例。
7.標準類型的分類
a.存儲模型
標量/原子類型 數值(全部的數值類型),字符串(所有是文字)
容器類型 列表、元組、字典
b.更新模型
可變類型 列表, 字典
不可變類型 數字、字符串、元組
c.訪問模型
分類 Python 類型 直接訪問 數字 順序訪問 字符串、列表、元組 映射訪問 字典