Python中类创建和实例化过程

嗨喽,大家好呀~这里是爱看美女的茜茜呐

一、 type()

1、创建类的两种方式

方式一

class MyClass(object):
    def func(self,name):
        print(name)

myc = MyClass()

print(MyClass, type(MyClass))
print(myc, type(myc))

我们创建了一个名为MyClass的类,并实例化了这个类,得到其对象myc

上面代码打印的结果为:

<class '__main__.MyClass'>    <class 'type'>
<__main__.MyClass object at 0x0288F8F0>   <class '__main__.MyClass'>

type()函数可以查看一个类型或变量的类型,MyClass是一个class,它的类型就是type,而myc是一个实例,它的类型就是class MyClass。

我们说class的定义是运行时动态创建的,而创建class的方法就是使用type()函数。


👇 👇 👇 更多精彩机密、教程,尽在下方,赶紧点击了解吧~

python源码、视频教程、插件安装教程、资料我都准备好了,直接在文末名片自取就可


type()函数既可以返回一个对象的类型,又可以创建出新的类型,比如,我们可以通过type()函数创建出MyClass类,而无需通过Class MyClass(object)…的定义:

方式二

动态创建类

type(类名, 父类的元组(针对继承的情况,可以为空),包含属性的字典(名称和值))

def fn(self, name='world'): # 先定义函数
    print('Hello, %s.' % name)

MyClass = type('MyClass', (object,), {
   'func':fn}) # 创建MyClass类,得到一个type的类对象
# MyClass = type('MyClass', (object,), {'func':lambda self,name:name}) # 创建MyClass类

myc=MyClass()

print(MyClass, type(MyClass)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值