标签:设置 面向 self pre eve dict color 难点 xiaohua
class Dog: level = "动物" mind = "傻子" #第一部分,静态变量,静态字段 language = "汪汪汪" def __init__(self,name,age,hobby): self.name = name self.age = age #第二部分,动态方法,函数 self.hobby = hobby
3,类名调用变量,方法
(1),类名查看类中所有的变量(字段),方法(函数)
类名.__dict__ 查看类中所有的变量及方法
(2),类名对静态变量(静态字段),进行操作
__dict__不能进行增删改,只能查询,最好不要用__dict__这个字典进行操作
可以通过(类名.变量)的方法进行查询,也可以增删改
class Dog: level = "动物" language = "汪汪汪"18:00:59 type = "狗" def __init__(self,name,age,sex): self.name1 = name self.age1 = age self.sex1 = sex def eat(self): print("chichichi") wangcai = Dog("旺财",2,"女") print(wangcai.__dict__) #查看类中所有的变量及方法 print(Dog.level) #使用类名.变量的方法进行查询 Dog.language = "喵喵喵" #更改 print(Dog.__dict__) del Dog.type #删除 print(Dog.__dict__) Dog.eat(111) #类名对动态方法的操作
4,实例化对象
类名+() 这个过程就叫做实例化一个对象
1,产生一个空的对象空间
2,只要进行实例化对象,会自动执行类里面的__init__方法,并将空的对象空间传给self,剩下的值传给相应的形参
3,执行init方法,给对象添加属性,并将完善好的对象返回给 类名+()
5,实例化对象的内部过程
6,对象调用变量,方法
(1),查找对象中的所有属性: __dict__
(2)对象操作对象中的属性
对象.属性 可增删改查
(3)对象操作类中的静态变量(静态字段),只能查,不能增删改
可以查类中的静态字段
增: 是在对象中设置新的属性,而不是改变类中的属性
(4) 对象执行类中的方法
class Dog: level = "动物" language = "汪汪汪" type = "狗" def __init__(self,name,age,sex): self.name1 = name self.age1 = age self.sex1 = sex def eat(self): print("chichichi") #xiaohua = Dog() #这个过程叫做实例化一个对象 wangcai = Dog("旺财",2,"女") #查找对象中所有属性 print(wangcai.__dict__) print(wangcai.name1) #查询 wangcai.job = "student" # 增加 print(wangcai.__dict__) del wangcai.name1 #删除 print(wangcai.__dict__) wangcai.age1 = "12" #修改 print(wangcai.__dict__) print(wangcai.level) #对象操作类中的静态变量(静态字段),只能查,不能增删改 wangcai.level = "中等动物" #在对象中设置了新的属性,但是没有改变类中的属性 print(wangcai.level) print(Dog.__dict__)
疑难点:
1,self 是位置参数,默认接收的是对象空间,约定俗称叫self
2, 在类的非__init__方法中,也可以给对象添加一些属性,前提是必须执行这个方法
标签:设置 面向 self pre eve dict color 难点 xiaohua
原文地址:https://www.cnblogs.com/lianghui-lianghui/p/9235741.html