首页 > 解决方案 > 在python中随机播放字典值

问题描述

我有一本字典,我想改组值,而不是键。例如:

{"a": "ACAT", "b": "ACTG", "c": "ACCC"}

洗牌后:

{"a": "ACAT", "b": "ACTG", "c": "ACCC"}

但我不知道如何在 python 中完成这项工作。如果你能帮助我,我将不胜感激。

标签: pythondictionary

解决方案


random模块具有就地洗牌的功能。

所以我们可以得到字典的值,打乱它们,并构造一个新的字典。

演示:

>>> import random
>>> d = {
...     "a": "ACAT",
...     "b": "ACTG",
...     "c": "ACCC"
... }
>>> shuffled = list(d.values())
>>> random.shuffle(shuffled)
>>> dict(zip(d, shuffled))
{'a': 'ACCC', 'b': 'ACTG', 'c': 'ACAT'}

推荐阅读