例項屬性和類屬性

2022-09-18 02:18:42 字數 905 閱讀 6275

# 修改類的方法:

1,person.country = '日本' 通過類名來修改

2,p.__class__.country = '日本' 通過例項進行修改(也是要先獲取類,本質還是通過類進行修改)

# 例項可以訪問類屬性,但不能修改,(通過例項修改類屬性,會給例項新增新的屬性,不是修改,可用p.__dict__檢視)

class person(object):

country = '中國'

def __init__(self, name, age):

self.name = name

self.age = age

p =person('李四', 24)

print(p.name)

p.name = '張三' #例項屬性可以修改 沒有該屬性就是新增

print(p.country) #訪問類屬性

# print(p.__dict__)

# p.country = '美國' #物件不能修改類屬性,這樣會新增乙個例項屬性

# print(p.__dict__)

#修改類屬性,不需要通過例項

person.country = '日本'

print(p.country) #如果例項有該屬性,訪問的是例項屬性,不是才會去查詢類屬性

#修改類的私有屬性

print(person.__dict__) #檢視包裝後的名稱,然後在修改(非常規手段)

person._person__sink_color = '白種人'

print(p.__class__) #通過物件獲取類屬性

p.__class__.country = '加拿大'

print(person.__dict__)

例項屬性和類屬性

例項屬性和類屬性 由於python是動態語言,根據類建立的例項可以任意繫結屬性。給例項繫結屬性的方法是通過例項變數,或者通過self變數 class student object def init self,name self.name name s student bob s.score 90但是...

類屬性和例項屬性

類屬性就是類物件所擁有的屬性,它被所有類物件的例項物件所共有,在記憶體中只存在乙個副本,這個和c 中類的靜態成員變數有點類似。對於公有的類屬性,在類外可以通過類物件和例項物件訪問 class people object name tom 公有的類屬性 age 12 私有的類屬性 p people p...

類屬性和例項屬性

1.不可修改型別 物件屬性只要賦值,那麼此物件用的屬性就是自己的屬性,不會再用同名的類屬性,類屬性的變化不會再影響到此物件。2.可修改型別 a.修改內部屬性的值,只要修改不是賦值,那麼修改會影響到所有物件以及類屬性。b.如果是重新賦值操作,效果等同於不可修改型別。class a books 三國 西...