如何返回一个相同的键和值对,以便我可以在我的Python3程序的单独实例中使用random.choice(list())?

时间:2016-12-09 23:07:50

标签: python

我想和委内瑞拉和加拿大的多伦多一起返回加拉加斯。我想在我正在开发的测验中使用加拉加斯作为我问题的一部分,并使用委内瑞拉作为该问题的秘密答案。 代码:

import random
d = {'Venezuela': 'Caracas', 'Canada': 'Toronto'}
def random_pair(x):
    print(random.choice(list(x.keys() and x.values())))
random_pair(d)

返回: 多伦多 要么: 加拉加斯 我希望它返回: 加拿大 多伦多 要么: 委内瑞拉 加拉加斯 我甚至试过

print(random.choice(list(d.keys()))
print(random.choice(list(d.values()))

但这可能会让加拉加斯回归加拿大。

2 个答案:

答案 0 :(得分:1)

使用button3.addActionListener(this::button3Method); // elsewhere private void button3Method(ActionEvent e) { // TODO fill with code } 代替d.items()d.keys()

答案 1 :(得分:0)

d.keys()d.values()未订购。它们各自处于任意顺序,这就是当您尝试从它们的列表中选择时它们不匹配的原因。

d.items()为您提供了关键&价值作为一对,一起,所以你可以安全地选择一个随机元素。

或者,您也可以选择一个随机密钥k,然后查找相关的值:dict[k],它将等于该值。