# # 什么是类?类是具备相同属性和行为方法的事物的抽象的集合 ## 类的例子:人类,鱼类,猴子类 # 类的做用:建立对象,通常会在类中定义一些属性和函数,当使用类建立对象的时候,该对象就会拥有类中定于的这些属性和函数 # 类中一些属性和函数,是由全部的对象身上共同的属性和行为抽离出来的 # 对象的做用:实现函数和属性的调用执行的 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 张总