3

我有一组字符串,例如:

('abc', 'def', 'xyz')

我想将这些字符串用作键“类型”的值,并将 2 个额外的键值对关联到每个键,为每个额外的键提供默认值,如下所示:

resulting_list_of_dicts = [{'type' : 'abc' ,'extra_key1' : 0, 'extra_key2'  : 'no'}, 
                          {'type' : 'def' ,'extra_key1' : 0, 'extra_key2'  : 'no'}, 
                          {'type' : 'xyz' ,'extra_key1' : 0, 'extra_key2'  : 'no'}]

我怎样才能在 Python 2.7 中(聪明地)做到这一点?

4

1 回答 1

3

您可以只使用列表推导。我假设这会返回你想要的

strings = [ 'abc', 'def', 'xyz' ]
result = [ { 'type': type, 'extra_key1':0, 'extra_key2':'no' } for type in strings ]

或者

strings = [ 'abc', 'def', 'xyz' ]
defaults = { 'extra_key1':0, 'extra_key2':'no' }
result = [ { 'type': type }.update( defaults ) for type in strings ]
于 2013-09-06T23:37:05.837 回答