18 面向对象初识1class person: level="高级动物" mind="有思想" def __init__(self,name,age,gent,area,hobby): self.name=name self.age=age self.gent=gent self.area=area self.hobby=hobby print("__init__") pass def walk(self): pass def eat(self): passaQ=person("Q","16","男","中国","吹牛")print(aQ.__dict__)一.类1.具有相同属性和技能的一类事物.2.类的结构( 两部分 )(1).静态变量 ( 字段 ) level="高级动物" mind="有思想"(2).动态方法 ( 函数 ) def __init__(self,name,age,gent,area,hobby): self.name=name self.age=age self.gent=gent self.area=area self.hobby=hobby print("__init__") pass def walk(self): pass def eat(self): pass 3..类名调用变量,方法(1).类名查看类中所有变量( 字段 ),方法( 函数 )print(类名.__dict__) #类中所有的东西 属性方法 只能查不能增删改类中的东西.(2).类名查找静态变量 ( 字段) 常用:通过类名.变量名 查:print(person.mind) 增:person.create="有创造力" 改:person.mind="行尸走肉" 删:del person.mind不常用:print(类名.__dict__[mind])(3).类名对方法的操作 ( 函数)常用 : 类名.方法名 (函数) person.walk( 参数 )不常用 : 类名.__dict__["walk"] 二.对象.1.对象是类的具体表现.2.实例化对象写法: 类名 ( ) 相当于实例化一个对象3执行流程(1).产生一个对象空间 ; ( aQ=类名 ( ) aQ是一个对象空间 )(2).自动执行类中__init__方法,并将对象空间传给self; ( def __init__(self) 把aQ传给self )(3).执行__init__方法给对象加属性,并将完善的对象返回给类名.def __init__(self,name,age,gent,area,hobby): self.name=name #self.name 中 name 表示对象属性 等号右边的 name 指 形参 self.age=age self.gent=gent self.area=area self.hobby=hobby print("__init__")4.对象查找对象中的所有属性print(aQ.__dict__)5.对象操作对象中的静态变量 查:对象.name # print(aQ.name) 增:对象.job="student" # aQ.job="stu" 删:del 对象.age 改:对象.gent="男"6.对象操作类中的静态变量 只能查询,不能增删改对象名.类中的变量(level) # print(aQ.level) 7.对象执行类中的方法对象名.walk( ) # aQ.walk( ) # 无需传参数 self位置的参数,自动接收对象空间. 补充:__init__叫构造方式,执行方法时也可以添加属性(临时) print("__init__") self.eye="eye"在类的非__init__中也可以给对象添加属性,前提必须先执行这个方法 def walk(self): print("步行去吧") self.skincolor="skincolor".
原文地址:https://www.cnblogs.com/J-7-H-2-F-7/p/9235734.html
时间: 2024-10-11 00:02:03