类的构建
1.使用class保留字定义类
class <类名> :
[类描述 "documention string" ]
<语句块>
(1) 类名:标识符/大写单词组合
(2)类描述:定义后通过 <类名>._doc_属性来访问
class Democlass: "this is a demo for python class" pass print (Democlass.__doc__) 运行结果:this is a demo for python class
2.类对象:class Object
'类定义完成后,默认生成一个类对象
每个类唯一对应一个类对象,用于存储这个类的基本信息
类对象是type类的实例,表达为type类型
class Democlass: "this is a demo for python class" print("hello Demo class") print(Democlass.__doc__) print(type(Democlass)) 运行结果:hello Demo class this is a demo for python class <class 'type'>
类对象内直接包含的语句会被执行 print("hello Demo class") ,因此,一般不在类定义中直接包含语句
3.类的使用方法:实例对象
通过创建实例对象(Instance Object)使用类的功能
<对象名> = <类名>([参数])
采用<对象名> . <属性名>和<对象名>. <方法名>()体现类的功能
class Democlass: "this is a demo for python class" print("hello Demo class") print(Democlass.__doc__) print(type(Democlass)) cn = Democlass() print(type(cn)) 运行结果:hello Demo class this is a demo for python class <class 'type'> <class '__main__.Democlass'>
4.类的构造函数
- 类的构造函数用于从类创建实例对象的过程
- 类的构造函数为实例对象提供了参数输入方式
- 类的构造函数为实例属性的定义和赋值提供了支持
- 构造函数无返回值,否则发生异常
- python使用预定义的 def _init _()作为构造函数
-
class <类名>:
def_init_(self , <参数列表>)
class Democlass: def __init__(self, name): print(name) dc1 = Democlass("老王") dc2 = Democlass("老李") 执行结果:老王 老李
5.类的属性(变量)
类属性:类对象的属性,由所有实例对象共享,
实例属性:实例对象的属性,由各实力对象所独享
class <类名>:
<类属性名> = <初值>
def _init _(self , <参数列表>)
self. <实例属性名> = < 初值>
class Democlass: count = 0 def __init__(self,name, age): self.name = name self.age = age Democlass.count+=1 #类属性:使用类名.属性名访问
dc1 = Democlass("老王",45) #实例属性:在类内部,使用self . 属性名 dc2 = Democlass("老李",51) 在类外部,使用对象名 . 属性名 print("总数", Democlass.count) print(dc1.name,dc2.name) 运行结果:总数 2 老王 老李

浙公网安备 33010602011771号