博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
09 Python两种创建类的方式
阅读量:5262 次
发布时间:2019-06-14

本文共 963 字,大约阅读时间需要 3 分钟。

第一种比较普遍的方式:

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

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

1 print(type(w))    #
2 print(type(Work)) #

  这就说明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

你可能感兴趣的文章
DataPipeline丨新型企业数据融合平台的探索与实践
查看>>
类信息查看
查看>>
Webstorm 10 for mac osx 注册机,序列号,kegen
查看>>
NOIP2017复赛普及组题解
查看>>
敏捷开发中提高软件生产率的方法
查看>>
Android子线程刷新主线程中View
查看>>
QT学习入门笔记
查看>>
用python写一个北京市的个税计算器
查看>>
VB6 red write DB using Microsoft DAO 3.6 Object Library
查看>>
Android JS interaction
查看>>
js中获取键盘事件
查看>>
Sql order by 和 group BY 如何共同运用?
查看>>
【转】C++中的虚函数的实现
查看>>
mysql 表分区
查看>>
FileFilter文件过滤器
查看>>
selenium driver.close()与driver.quit()区别
查看>>
vue搭建骨架屏步骤配置
查看>>
判断程序是否已经启动的两种方法
查看>>
java启动项目报错,org.apache.catalina.lifecycleException..............以及解决方案
查看>>
vb.net ctype用法
查看>>