# # 什麼是類?類是具備相同屬性和行爲方法的事物的抽象的集合 ## 類的例子:人類,魚類,猴子類 # 類的做用:建立對象,通常會在類中定義一些屬性和函數,當使用類建立對象的時候,該對象就會擁有類中定於的這些屬性和函數 # 類中一些屬性和函數,是由全部的對象身上共同的屬性和行爲抽離出來的 # 對象的做用:實現函數和屬性的調用執行的 class People(object): # pass 保證語法完整性 # pass # 人出生的時候,已經具備的性別、年齡、身高、體重 # 初始化函數,在建立對象的時候自動調用 # __init__ 內置函數 def __init__(self, name, age, phone): # 在這個函數中須要將建立對象時就應該擁有的一些屬性賦值 # 對象.屬性名 = 屬性值 self.name = name self.age = age self.phone = phone # 使用People類建立一個對象 # 建立對象的基本格式:對象名 = 類名() # 當建立一個對象時,會在內存中開闢一塊空間,來存放這個對象,這個對象是有一個地址的 # 每次建立的對象都是一個單獨個體,他們的內存地址都是不同的 1,添加新的屬性 # 對象.屬性名 = 屬性值 # 添加新的屬性名,或者是修改原有屬性值 # 建立對象 建立對象 = 類名()
1 setattr(self,) 添加屬性, python
delattr() 刪除屬性函數
hasattr(object,name )函數,判斷是否是擁有該屬性,若是有返回True,沒有,返回Falsespa
getattr(object,name)函數,code
# 使用getattr(obejct, name, default)函數,會把獲取到的屬性值返回 # object 要獲取屬性的對象 name 要獲取的屬性名 default 當屬性不存在,賦一個默認值 # 若是屬性不存在,能夠給一個默認值,不會讓程序出現異常
# setattr 動態添加或者修改屬性 attr_dict = {'iq': '150', 'eq': '150', 'color': 'yellow'} t = (1,2,3) t = 1,2 print(attr_dict.items()) # for循環遍歷字典 #items,得到字典的鍵值對 for key,value in attr_dict.items(): # key是屬性名 value是屬性值 # setattr,能夠將一個字符串的屬性名 添加到對象的屬性中 # p1.key = value 這種方式沒法添加 至關於寫了 p1.'iq' = '150' setattr(p1, key, value) print(p1.iq) # delattr 動態刪除屬性 # 刪除對象p1中的屬性 attr_list = ['iq','eq','color'] for attr in attr_list: # 能夠使用delattr函數刪除 delattr(p1, attr) # 對象的屬性刪除以後,不可以使用 # print(p1.iq)
class People(object): total = 0 def __init__(self,name): self.name = name p1 = People('張總') p2 = People('張我') s = hasattr(p1,'sex') print(s) s = hasattr(p1,'name') print(s) m = getattr(p1,'sex',0) print(m) m = getattr(p1,'name',0) print(m) #False True 0 張總