温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

type()函数怎么创建python3中的类

发布时间:2020-11-17 09:29:41 来源:亿速云 阅读:87 作者:小新 栏目:编程语言

这篇文章给大家分享的是有关type()函数怎么创建python3中的类的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

当我们使用class定义类的时候,Python解释器仅仅是扫描一下定义的语法,然后调用type()函数创建class类。那为什么采取这种方式呢?先看一个例子:

class A(object):
    # 类属性
    role = 'student'
 
    # 实例方法
    def __init__(self, name):
        # 实例属性
        self.name = name
 
    # 类方法
    @classmethod
    def study(cls):
        pass
 
    # 静态方法
    @staticmethod
    def cal_student_num():
        Pass

上面我们使用class定义了A类对象,其中包含了类属性、类方法、实例属性、实例方法、静态方法。如果我们使用type()函数,如何创建呢?

# 使用type()函数定义类
# 实例方法
def __init__(self, name):
    # 实例属性
    self.name = name
 
 
# 类方法
@classmethod
def study(cls):
    pass
 
 
# 静态方法
@staticmethod
def cal_student_num():
    pass
 
 
# 元类最大的作用不在于创建一个新的类
A = type(
    'A',
    (object,),
    {
        'role': 'student',
        '__init__': __init__,
        'study': study,
        'cal_student_num': cal_student_num
})

仔细观察,使用type()函数创建class类的时候,只是将定义在class类内部的代码拿出来,放在外面,然后向type()函数传入三个参数namebasesdictname字符串类型,代表类名,比如例子中的"A"bases元组类型,代表基类(或父类),即需要继承的类对象;dict字典类型,将定义的类属性、类方法、实例方法等,以键值对的形式建立映射关系。

感谢各位的阅读!关于type()函数怎么创建python3中的类就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI