【美妙的Python之三】Python 物件解析
美妙的Python之Python物件
簡而言之: Python 是能你無限驚喜的語言,與眾不同。
Python物件概念的理解,是理解Python資料儲存的前提。Python使用物件來儲存資料,構造任何型別的值都是物件。
1.Python 物件:
Python的物件有3個屬性:
標識:每個物件都有一個唯一的標識,通過 id( ) 可以檢視物件的標識。
型別:物件的型別,指明該物件可以儲存的資料型別,通過 type( ) 可檢視。
值 :物件儲存資料的值。
如:
a = 1
a = 3
Python內部的實現機制:a=1,Python先建立一個整形物件,將該整形物件的值設定為1,最後該物件賦給變數a。a=2,Python再建立一個新的整形物件,將該物件的值設定為2,最後將該物件賦給變數a。
Python的記憶體管理:每個物件都有一個引用計數器,物件賦值給變數名時引用計時器+1,當一個引用銷燬時,引用計數器 - 1,當引用計數器為0,也即所有引用都不存在時,系統會銷燬這個物件。
2.變數名與物件:
Python基於物件的儲存資料機制,變數名與物件的關係不同於C/C++變數名與記憶體地址。Python中,通過變數名,不能改變物件的值,而是變數名指向了新的物件。C/C++中,變數名重新賦值,會改變對應記憶體地址的值。
Python中,變數名可以指向任何型別的物件,允許改變一個變數名指向新的不同型別的資料物件。C/C++中,一個變數名有其特定的資料型別。
3.Python標準型別:
Python語言提供了標準的資料型別,資料儲存基於物件機制,上面關於物件的介紹能加深我們隊Python資料的理解。
- 數字
- 字串
- 列表
- 元組
- 字典
Python的物件儲存資料機制:實質上是Python封裝了記憶體地址,這種封裝的優勢在於Python可以實現自動的記憶體管理等功能,減輕開發人員的負擔,代價則是Python相對於C/C++等語言,需要更多的空間消耗與效能損耗。
相關文章
- 【美妙的Python之二】Python初步Python
- 【美妙的Python之六】Python函式Python函式
- 【美妙的Python之一】Python簡介及環境搭建Python
- 【美妙的Python之四】變數:數字、字串Python變數字串
- 【美妙的Python之五】變數:列表、元組、元字典Python變數
- python學習之三Python
- Python實現支援JSON儲存和解析的物件PythonJSON物件
- python 的xml解析PythonXML
- 【Python】5.物件導向的PythonPython物件
- python 物件池Python物件
- Python 物件(上)Python物件
- Python 物件(下)Python物件
- 【python 物件導向】 python物件學習筆記《1》Python物件筆記
- 美妙的“流程公司”
- Python基礎之:Python中的內部物件Python物件
- python解析式Python
- Python中可變物件和不可變物件的區別?Python基礎Python物件
- Python中的類與物件Python物件
- Python——物件導向Python物件
- Python語法—物件Python物件
- python-物件管理Python物件
- Python 物件導向Python物件
- python物件導向Python物件
- python可迭代物件Python物件
- python 物件拷貝Python物件
- dmidecode的Python解析IDEPython
- 《JavaScript物件導向精要》之三:理解物件JavaScript物件
- ast.literal_eval替代eval將字串形式的表示式解析為 Python 物件AST字串Python物件
- Python深入03 物件的屬性Python物件
- python中file物件的常用方法Python物件
- python之XML解析PythonXML
- 用Python解析XMindPython
- python解析命令列Python命令列
- Python 3 解析 htmlPythonHTML
- Python Select 解析Python
- Python - 物件導向程式設計 - 什麼是 Python 類、類物件、例項物件Python物件程式設計
- Python學習之路28-符合Python風格的物件Python物件
- Python中的List物件(《Python原始碼剖析》筆記四)Python物件原始碼筆記