【问题标题】:Is it possible to use a variable with self in Python? [duplicate]是否可以在 Python 中使用带有 self 的变量? [复制]
【发布时间】:2021-07-27 16:38:04
【问题描述】:

我想为带有 for 循环的字典中的类创建实例属性。下面的代码显示了我要完成的工作。代码现在只在对象中保存了一个名为“key”的属性,而不是“a,b,c”

以下代码用于演示目的。

class A:
    LIST= {'a' : 22 , 'b' : 13, 'c' : 11}

    def __init__(self):
        for key, value in in self.LIST.items():
            self.key = value

【问题讨论】:

    标签: python class dictionary oop self


    【解决方案1】:

    如果我理解您的要求,您可以使用 setattr 来解决此问题

    class A:
        LIST= {'a' : 22 , 'b' : 13, 'c' : 11}
    
        def __init__(self):
            for key, value in self.LIST.items():
                setattr(self, key, value)
    

    然后您可以像这样访问这些成员

    >>> a = A()
    >>> a.a
    22
    >>> a.b
    13
    >>> a.c
    11
    

    【讨论】:

    • 如果你很懒,你也可以这样做self.__dict__.update(self.LIST)
    • 谢谢!它成功了
    猜你喜欢
    • 2011-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-04
    • 2012-11-10
    • 2011-08-18
    • 1970-01-01
    • 2021-11-22
    相关资源
    最近更新 更多