【发布时间】:2019-04-01 19:12:15
【问题描述】:
我想打印出偶数频率的字典键、值对
a = dict('A': 3, 'B': 5} => ['A', 'B', 'A', 'B', 'A', 'B', 'B', 'B']
a = dict('A': 4, 'B': 1} => ['A', 'B', 'A', 'A', 'A']
我知道我可以使用 while 循环来打印每个键并每次删除计数,直到所有键的所有值都为 0,但如果有更好的方法吗?
def func(d: dict):
res = []
while any(i > 0 for i in d.values()):
for k, c in d.items():
if c > 0:
res.append(k)
d[k] -= 1
return res
【问题讨论】:
-
请显示您当前的尝试。您使用的 Python 版本是否 >= 3.6?
-
当然,更新了问题
标签: python python-3.x