6

を使用してオブジェクトの辞書にキーを追加するにはどうすればよいsetattr()ですか? fieldsクラスで定義された辞書があるとします。別のクラスから、この辞書にキーを追加したいと思います。続行するにはどうすればよいですか?setattr(cls, 'fields', 'value')属性を完全に変更します。

4

3 に答える 3

7

名前検索ルートをたどる必要がある場合は、次を使用します。

getattr(cls, 'fields')['key'] = 'value'
于 2013-09-23T10:41:07.650 に答える
2

getattrこれを行う代わりに使用する必要がsetattrあります。何かのようなもの。

>>> class TestClass:
        def __init__(self):
            self.testDict = {}


>>> m = TestClass()
>>> m.testDict
{}
>>> getattr(m, "testDict")["key"] = "value"
>>> m.testDict
{'key': 'value'}
于 2013-09-23T10:41:10.340 に答える