我有一个以下形式的字典:
{'string1': 3, 'string2': 4, 'string3':2}
Run Code Online (Sandbox Code Playgroud)
我想把它变成一个列表,其中键的实例是其对应的值对的函数.像这样:
['string1','string1','string1','string2','string2','string2','string2','string3','string3']
Run Code Online (Sandbox Code Playgroud)
我正在努力解决这个问题,因为我觉得应该有一个优雅的解决方案.这是我到目前为止所拥有的:
t2 = [dictionary[key]*key for key in dictionary.keys()]
Run Code Online (Sandbox Code Playgroud)
但这产生了以下混乱:
['string2string2string2string2', 'string3string3', 'string1string1string1']
Run Code Online (Sandbox Code Playgroud)
如果键的顺序不重要,您可以尝试这样做:
[k for k, v in d.items() for _ in range(v)]
#['string2',
# 'string2',
# 'string2',
# 'string2',
# 'string3',
# 'string3',
# 'string1',
# 'string1',
# 'string1']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |