温馨提示×

温馨提示×

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

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

python用类方法

发布时间:2020-10-28 11:15:30 来源:亿速云 阅读:99 作者:小新 栏目:编程语言

这篇文章主要介绍了python用类方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

 在Python中类方法(class method)采用装饰器@classmethod来定义。

我们直接看例子。

class Kls(object):
    num_inst = 0

    def __init__(self):
        Kls.num_inst = Kls.num_inst + 1

    @classmethod
    def get_no_of_instance(cls):
        return cls.num_inst


ik1 = Kls()
ik2 = Kls()

print ik1.get_no_of_instance()
print Kls.get_no_of_instance()

类方法用在模拟java定义多个构造函数的情况。

由于python类中只能有一个初始化方法,不能按照不同的情况初始化类。

coding:utf-8
class Book(object):
def __init__(self, title):
self.title = title
   @classmethod
def class_method_create(cls, title):
book = cls(title=title)
return book
   @staticmethod
def static_method_create(title):
book= Book(title)
return book
book1 = Book("use instance_method_create book instance")
book2 = Book.class_method_create("use class_method_create book instance")
book3 = Book.static_method_create("use static_method_create book instance")
print(book1.title)
print(book2.title)
print(book3.title)

感谢你能够认真阅读完这篇文章,希望小编分享python用类方法内容对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!

向AI问一下细节

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

AI