cls介绍:
python中cls代表的是类的本身,相对应的self则是类的一个实例对象。
因为cls等同于类本身,类方法中可以通过使用cls来实例化一个对象。
示例代码1:
class BaseTest(object):
def __init__(self, name, age):
self.name = name
self.age = age
@classmethod
def run(cls, param_name, param_age):
return cls(name=param_name, age=param_age)
def ret_data(self):
return self.name, self.age
test = BaseTest('dgw', 26)
ret = test.run('aa', 25)
print(ret.name, ret.age)
print(test.ret_data())
print(ret.ret_data())
运行结果:
示例代码2:
class BaseTest(object):
def __init__(self, name, age):
self.name = name
self.age = age
@classmethod
def run(cls, param_name, param_age):
return cls(name=param_name, age=param_age)
def ret_data(self):
return self.name, self.age
# test = BaseTest('dgw', 26)
# ret = test.run('aa', 25)
# print(ret.name, ret.age)
# print(test.ret_data())
# print(ret.ret_data())
ret = BaseTest.run('aa', 25)
print(ret)
print(ret.name, ret.age)
print(ret.ret_data())
运行结果:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/142861.html