为了账号安全,请及时绑定邮箱和手机立即绑定

如何访问类变量中的类属性?

如何访问类变量中的类属性?

慕森王 2022-12-06 15:36:55
我想从类变量中引用一个类属性,但它给了我错误'self is not defined'class Test:    def __init__(self, val):        self.val = val    data = self.val    def main(self):        print(self.data)
查看完整描述

1 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

当您说data = self.valoutside__init__时,您正在定义一个类变量,而不是一个实例变量。此行影响类型测试的所有对象。但是,self 在此范围内不被识别。


如果你想val更新这个类的所有实例,


class Test:

    data = None

    def __init__(self, val):

        self.val = val

        Test.data = self.val

在这种情况下,


test1 = Test(1)

print(test1.data) # prints 1

print(Test.data)  # prints 1

test2 = Test(2)

print(test1.data) # prints 2

print(test2.data) # prints 2

print(Test.data)  # prints 2


查看完整回答
反对 回复 2022-12-06
  • 1 回答
  • 0 关注
  • 60 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信