首页 > 解决方案 > 如何随机播放与字典中的键相关的单词?

问题描述

我有一本字典

GiftDict = {'Seth':'A', 'Jeremy':'B', 'Ben':'C'}

我想将这本字典中的值改组为不同的键。
我试着像这样把字典分成两部分......

person = GiftDict.keys()
partner = GiftDict.values()

并用

import random    
random.shuffle(partner)

但我不断收到类型错误:'dict_values' object is not subscriptable

我想重新创建字典,但使用打乱的值。这是到达那里的正确方法吗?有小费吗?谢谢!

标签: pythonlistdictionarykey-valueshuffle

解决方案


如果您使用的是 Python 版本 < 3.7,则 Python dicts 没有顺序,所以改组是没有意义的。如果您使用的是较新的 Python 版本,则可以像下面这样对 dicts 项目进行洗牌。

import random
l = list(GiftDict.items())
random.shuffle(l)
shuffled_dict = dict(l)

推荐阅读