新聞中心
Python編程語言的出現(xiàn)給我們帶來了非常大的好處。對于這樣一款面向對象的開源語言,其在開發(fā)領域中占據著非常重要的地位。在這里我們就先從Python對象的應用開始來一起了解一下這一語言的面向對象特征。#t#

創(chuàng)新互聯(lián)建站,是成都地區(qū)的互聯(lián)網解決方案提供商,用心服務為企業(yè)提供網站建設、app軟件開發(fā)公司、微信平臺小程序開發(fā)、系統(tǒng)按需網站開發(fā)和微信代運營服務。經過數十余年的沉淀與積累,沉淀的是技術和服務,讓客戶少走彎路,踏實做事,誠實做人,用情服務,致力做一個負責任、受尊敬的企業(yè)。對客戶負責,就是對自己負責,對企業(yè)負責。
“萬物皆對象”(Everything is object),這是Python這種面向對象語言所倡導的理念。在我們熟悉的C++中,1只是一個整型數,而不是一個對象。但在Python中,1卻是一個實實在在的對象,您可以用dir(1)來顯示它的屬性。
Python對象都有下面三個特征:
* ***的標識碼(identity)
* 類型
* 內容(或稱為值)
一旦Python對象被創(chuàng)建,它的標識碼就不允許更改。對象的標識碼可以有內建函數id()獲取,它是一個整型數。您可以將它想象為該對象在內存中的地址,其實在目前的實現(xiàn)中標識碼也就是該對象的內存地址。
- >>> class c1:
- pass
- ...
- >>> obj = c1()
- >>> obj
- <__main__.c1 instance at 0x00AC0738>
- >>> id(obj)
- 11274040
換算一下,11274040就是十六進制的0x00AC0738。
- >>> id(1)
- 7957136
這就是前面提到的1這個對象的標識碼,也就是它在內存中的地址。
當用is操作符比較兩個對象時,就是在比較它們的標識碼。更確切地說,is操作符是在判斷兩個對象是否是同一個Python對象。
- >>> [1] is [1]
其結果是False,是因為這是兩個不同的對象,存儲在內存中的不同地方。
- >>> [1] == [1]
其結果是True,是因為這兩個不同的Python對象有著相同的值。
與對象的標識碼類似,對象的類型也是不可更改的??梢杂脙冉ê瘮祎ype()取得對象的類型。
有的對象的值是可以改變的,這類對象叫作可變對象;而另外一些對象在創(chuàng)建后其值是不可改變的(如1這個對象),這類對象叫作恒定對象。對象的可變性是由它的類型決定的,比如數值型(number)、字符串型(string)以及序列型(tuple)的對象是恒定對象;而字典型(dictionary)和列表型(list)的對象是可變對象。
除了上面提到的三個特征外,一個Python對象可能:
* 沒有或者擁有多個方法
* 沒有或者有多個名字
文章標題:Python對象主要特征解析
網站路徑:http://m.5511xx.com/article/djseshp.html


咨詢
建站咨詢
