我一直在思考这个问题,但我没有得出任何结论(Python 还不是很好)。
我的字典是这样的:
{1:[狗,动物],2:[方形,形状],3:[红色,颜色]}
我正在打印值,但字典是按数字排序的,这很好,但我想随机化它,所以我打印出如下内容:
3
red
color
1
dog
animal
2
square
shape
我知道列表对于这种情况会更理想,但此数据来 self 无法更改的现有结构。也许重新编号键可以解决问题?
最佳答案
字典已经以任意顺序列出,它们没有固定顺序。参见 Why is the order in dictionaries and sets arbitrary?任何顺序感都是巧合,取决于字典的插入和删除历史。
也就是说,使用 random.shuffle()
进一步确保随机列表非常容易:
import random
items = yourdict.items()
random.shuffle(items)
for key, value in items:
print key
print '\n'.join(value)
关于python - 随机字典排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23877419/