類(class)抽象的概念,比如說人類、鳥類、水果、是一個(gè)總的稱呼,沒有具體到某個(gè)物體;
對(duì)象(object,指具體實(shí)例,instance);
給對(duì)象增加一個(gè)實(shí)例變量
1
2
3
4
5
6
|
# 增加一個(gè)skills實(shí)例變量 p.skills = [ 'programming' , 'writing' ] print (p.skills) #刪除p對(duì)象的name實(shí)例變量,而不是刪除類中變量,新建一個(gè)對(duì)象,name實(shí)例變量還是構(gòu)造函數(shù)默認(rèn)的。 del p.name # print(p.name) 會(huì)報(bào)錯(cuò) |
Python 允許通過對(duì)象訪問類變量 ,但如果程序通過對(duì)象嘗試對(duì)類變量賦值,此時(shí)性質(zhì)就變了一Python 是動(dòng)態(tài)語言,賦值語句往往意味著定義新變量。因此,如果程序通過對(duì)象對(duì)類變量賦值,其實(shí)不是對(duì)“類變量賦值”,而是定義新的實(shí)例變量 。例如如下程序 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
class Inventory: #定義兩個(gè)變量 quantity = 2000 item = '鼠標(biāo)' #定義實(shí)例方法 def change( self ,item,quantity): self .item = item self .quantity = quantity #創(chuàng)建Inventory對(duì)象 iv = Inventory() iv.change( '顯示器' , 500 ) #訪問iv的item和quantity實(shí)例變量 print (iv.item) #顯示器 print (iv.quantity) #500 #訪問Inventotry的item和quantity類變量 print (Inventory.item) #鼠標(biāo) print (Inventory.quantity) #2000 |
觀點(diǎn)擴(kuò)展:
Python的面向?qū)ο螅梢院唵卫斫鉃槟闾幚淼臇|西都是“對(duì)象”。變量是指向一個(gè)對(duì)象的,變量名稱是一個(gè)對(duì)象,相關(guān)的是namespace這個(gè)概念。類代表一類東西,是個(gè)對(duì)象。class下面的instance就是類的具體表現(xiàn),相當(dāng)于具備某一特征的個(gè)體,這些都是對(duì)象。
到此這篇關(guān)于如何理解python對(duì)象的文章就介紹到這了,更多相關(guān)python對(duì)象怎么理解內(nèi)容請(qǐng)搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!
原文鏈接:https://www.py.cn/faq/python/19046.html