python定义一个类的另一种写法

定义一个类的另一种写法


def func(self):

print('hello %s' %self.name)
def __init__(self,name,age):
self.name = name
self.age = age

Foo = type('Foo', (object,), {'talk': func,'__init__':__init__})
#object,可以不用写,但真要写的话要加逗号,形成元组的形式,不然会报错

#type称作类的类,f是Foo的一个实例,Foo是type的一个实例化
#talk函数名可以变,但是__init__函数名不可以变。 object不写是经典类,写上去就是新式类

f=Foo("JC",22)
f.talk()
print(type(Foo))
#通过上面的验证可以发现定义一个类就是通过type把函数封装在一起
posted @ 2020-05-28 00:53  逝水无痕L  阅读(528)  评论(0)    收藏  举报