码迷,mamicode.com
首页 > 编程语言 > 详细

python Class:面向对象高级编程 元类:type

时间:2018-07-20 19:00:04      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:用法   动态   add   alias   元类   rap   lin   asi   type   

type的用法:

1、普通的type用法:检查类型

class my(object):
    def hello(self, name='world'):
        print('Hello, %s.' % name)

h = my()       
print(type(my))        
print(type(h))

运行结果:

<type 'type'>
<class '__main__.my'>

my是class, 所以它的类型是type,

h是class的实例,所以它的类型是class my。



2、动态创建Class

格式:

        a.定义一个函数,

        b.实体类名 = type(类名, (继承, ), dict(类的方法=函数)) 

def fn(self, name='world'): # 先定义函数
     print('Hello, %s.' % name)
     
hl = type('Hello', (object,), dict(hello=fn)) # 创建Hello class

h = hl()
h.hello()

运行结果:

Hello, world.


python Class:面向对象高级编程 元类:type

标签:用法   动态   add   alias   元类   rap   lin   asi   type   

原文地址:http://blog.51cto.com/13502993/2147832

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!