09 Python两种创建类的方式

博客介绍了Python中创建类的两种方式。一是简单创建类,说明type是元类,即创建类的类;二是用type动态创建类,介绍了type方法的三个参数,包括类名、父类集合、方法名字典,并举例说明,等同于普通创建类的方式。

第一种比较普遍的方式:

1 class Work():
2     def __init__(self,name):
3         self.name = name
4 
5 w = Work('well woker')

这样就简单创建了一个类,分别打印w的类型和Work的类型

1 print(type(w))    #<class '__main__.Work'>
2 print(type(Work))  #<class 'type'>

  这就说明type也是一个类,并且是类的类,称为元类,元类就是创建类的类 。

第二种创建类的方式:

  用type动态创建类,type有一个方法:type(类名,父类名,方法名(字典形式))用来动态创建类

  三个参数的具体内容:

    1. 第一个参数: 要创建的class的名称

    2. 第二个参数: 继承的父类集合,Python支持多重继承,如果只有一个父类,写(obj,);

    3. 第三个参数: class的方法名字典,字典内容为'类里面方法名称' : '写好的函数名称' 创建之后使用类方法名称调用

  例子:

 1 def func(self):   #第一个方法
 2     print('hello %s' % self.name)
 3 
 4 def __init__(self,name,age):   #初始化方法
 5     self.name = name
 6     self.age = age
 7 
 8 #type('叫什么类','继承谁','里面有什么方法')
 9 
10 Foo = type('Foo',(object,),{'eat':func,
11                                         '__init__':__init__
12                                       })      
13 
14 f = Foo('周润发','20')
15 f.talk()
16 print(type(Foo))   

  上面的例子就等同于第一种普通创建类的方式,这里就不赘述了。

转载于:https://www.cnblogs.com/a2534786642/p/11061574.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值