根据 int 值将字典的键和值作为字符串 x 次输出到列表
Outputting keys and values of dict of dicts to a list as strings x-times depending on an int value
我正在将一个字典的键和值输出到一个列表中以供评估。
示例字典如下所示:
gold_network = {'Anakin': {'All Jedi': {'fear': 1},
'Jedi': {'fear': 4},
'Mace': {'anticipation': 1, 'fear': 1},
'Obi-Wan': {'joy': 2, 'surprise': 2},
'Qui-Gon': {'fear': 2,
'joy': 1,
'sadness': 4,
'surprise': 3,
'trust': 5},
'The Council': {'anticipation': 1, 'fear': 1},
'Yoda': {'anticipation': 1, 'surprise': 1},
'young boy': {'sadness': 3, 'trust': 1}},
'Jedi': {'Anakin': {'joy': 2}},
'Obi-Wan': {'Anakin': {'joy': 2, 'trust': 2}},
'Qui-Gon': {'Anakin': {'anger': 2, 'joy': 2, 'trust': 1}},
'Yoda': {'Anakin': {'joy': 3}},
'young boy': {'Anakin': {'joy': 2, 'trust': 3}}}
我的代码如下所示:
gold_list_complete = list('{}-{}-{}'.format(k, k1, k2) for k, v in\
gold_network.items() for k1,v1 in v.items()\
for k2 in v1.keys())
希望的输出看起来不错,例如:[Anakin-All Jedi-fear,...]
但我希望能够输出与最后一个字典的最后 int
值一样多的格式。
例如对于关系 Anakin-Jedi-fear
,其中 int
是 4
:
[Anakin-Jedi-fear, Anakin-Jedi-fear, Anakin-Jedi-fear, Anakin-Jedi-fear, ...#other relations]
将是该关系列表的所需输出。
我尝试乘以整行代码,但它给了我错误消息,即值未定义。
关于将什么添加到代码以输出关系作为其最后一个 int
值的任何想法?
提前致谢!
好吧,您可以 for k2,v2 in v2.items()
代替 for k2 in v1.keys()
并重复 v2
次。
list('{}-{}-{}'.format(k, k1, k2)
for k, v in gold_network.items()
for k1,v1 in v.items()
for k2,v2 in v1.items()
for _ in range(v2))
我正在将一个字典的键和值输出到一个列表中以供评估。
示例字典如下所示:
gold_network = {'Anakin': {'All Jedi': {'fear': 1},
'Jedi': {'fear': 4},
'Mace': {'anticipation': 1, 'fear': 1},
'Obi-Wan': {'joy': 2, 'surprise': 2},
'Qui-Gon': {'fear': 2,
'joy': 1,
'sadness': 4,
'surprise': 3,
'trust': 5},
'The Council': {'anticipation': 1, 'fear': 1},
'Yoda': {'anticipation': 1, 'surprise': 1},
'young boy': {'sadness': 3, 'trust': 1}},
'Jedi': {'Anakin': {'joy': 2}},
'Obi-Wan': {'Anakin': {'joy': 2, 'trust': 2}},
'Qui-Gon': {'Anakin': {'anger': 2, 'joy': 2, 'trust': 1}},
'Yoda': {'Anakin': {'joy': 3}},
'young boy': {'Anakin': {'joy': 2, 'trust': 3}}}
我的代码如下所示:
gold_list_complete = list('{}-{}-{}'.format(k, k1, k2) for k, v in\
gold_network.items() for k1,v1 in v.items()\
for k2 in v1.keys())
希望的输出看起来不错,例如:[Anakin-All Jedi-fear,...]
但我希望能够输出与最后一个字典的最后 int
值一样多的格式。
例如对于关系 Anakin-Jedi-fear
,其中 int
是 4
:
[Anakin-Jedi-fear, Anakin-Jedi-fear, Anakin-Jedi-fear, Anakin-Jedi-fear, ...#other relations]
将是该关系列表的所需输出。
我尝试乘以整行代码,但它给了我错误消息,即值未定义。
关于将什么添加到代码以输出关系作为其最后一个 int
值的任何想法?
提前致谢!
好吧,您可以 for k2,v2 in v2.items()
代替 for k2 in v1.keys()
并重复 v2
次。
list('{}-{}-{}'.format(k, k1, k2)
for k, v in gold_network.items()
for k1,v1 in v.items()
for k2,v2 in v1.items()
for _ in range(v2))