从字符串中实例化对象变量

时间:2017-12-31 00:56:13

标签: python python-3.x oop

例如在伪代码中:

class Example:

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

a = Example({"objectVariable": ["some", "data"]})
print(a.objectVariable)
>>>["some", "data"]

我该如何实现?

提前致谢

2 个答案:

答案 0 :(得分:1)

dict分配给内置__dict__以获得更简洁:

class Example:
   def __init__(self, dict):
     self.__dict__ = dict

答案 1 :(得分:1)

您正在寻找__getattr__,如果广告位不存在,将会调用该广告。

class Example:
    def __init__(self, dict):
        self.dict = dict
    def __getattr__(self, prop):
        return self.dict[prop]