从字典中分配属性值

时间:2011-08-03 23:27:42

标签: dictionary attributes python

我有一本大字典。我想将每个键值对分配给一个类的属性。目前我在下面的代码片段中有一些内容。它有效,但它并不漂亮。有一个更好的方法吗?

Pseudo-python片段:

config = A large dictionary

self.Width  = config['width']
self.Height = config['height']
self.Text   = config['text']
self.Font   = config['font']
etc...

2 个答案:

答案 0 :(得分:5)

非常简单:

for key, value in config.iteritems():
    # Customize key here, for example transform 'text_height' to 'TextHeight' or 
    # use 'key.title()' to obtain titlecased keys...
    setattr(self, key, value)

您可能想要key.title(),但在python中建议实例属性全部为小写。

答案 1 :(得分:2)

如果您不关心标题,您可以这样做:

self.__dict__.update(config)