Python类(八)-类的起源
首先用type()看一下类和实例化对象的类型
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" class Person( object ): def __init__( self , name): self .name = name def eat( self ): print ( '%s is eating' % self .name) if __name__ = = '__main__' : p = Person( 'John' ) print ( type (p)) print ( type (Person)) |
运行结果
Person类是一个类,也是一个实例化的对象,是type类的一个实例化对象
定义类有两个方法
一个是常见的
1 2 3 4 5 6 7 8 9 10 11 12 13 | # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" class Person( object ): def __init__( self , name): self .name = name def eat( self ): print ( '%s is eating' % self .name) if __name__ = = '__main__' : p = Person( 'John' ) p.eat() |
还有一个是很少见到的方法
1 2 3 4 5 6 7 8 9 10 11 12 13 | # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" def eat( self ): print ( '%s is eating' % self .name) def init( self , name): self .name = name if __name__ = = '__main__' : Person_1 = type ( "Person_1" ,( object ,),{ '__init__' :init, 'eat' :eat}) p1 = Person_1( 'Jack' ) p1.eat() |
直接通过type类实例化生成一个对象,同时也是一个类
第一个参数为类名,第二个参数为当前类的基类,第三个参数为类的方法
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步