【问题标题】:reading kwargs into __init__ [duplicate]将 kwargs 读入 __init__ [重复]
【发布时间】:2019-01-26 08:28:43
【问题描述】:

在类中的 init 方法中,我想从 dict kwarg 中将键读取为 self.key 并为它们分配值。看代码就明白了。

class Abc:
    def __init__(self,**kwarg):
        for key,value in kwarg.items():
            self.key = value
obj = class(name = 'josh', age = 23, country = 'UK')
print(dir(obj))

obj 只有 key 属性。我明白为什么它有钥匙。但我不知道如何读取 self.key 的密钥?我想你可以得到这个问题。 我除外的是obj必须有姓名、年龄、国家属性

【问题讨论】:

    标签: python class init keyword-argument


    【解决方案1】:

    你需要的是setattr:

    class Abc:
        def __init__(self, **kwarg):
            for key, value in kwarg.items():
                setattr(self, key, value)
    

    【讨论】:

    • 做到了!谢谢洛朗
    猜你喜欢
    • 2019-04-21
    • 2018-11-06
    • 1970-01-01
    • 2022-10-13
    • 1970-01-01
    • 2021-11-26
    • 2021-06-11
    • 2014-02-02
    • 1970-01-01
    相关资源
    最近更新 更多