我要回委内瑞拉的加拉加斯和加拿大的多伦多。我想使用加拉加斯作为我正在开发的测验中问题的一部分,并使用委内瑞拉作为该问题的秘密答案。代码:
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()))但这可能会在返回加拿大的同时返回加拉加斯。
发布于 2016-12-10 07:10:40
使用d.items()而不是d.keys()和d.values()。
发布于 2016-12-10 07:36:48
未订购d.keys()和d.values()。它们每个都是任意顺序的,这就是为什么当你试图从它们的列表中挑选时,它们不匹配的原因。
d.items()将键和值作为一对提供给您,因此您可以安全地选择一个随机元素。
或者,您也可以选择一个随机的键值,然后只查找与之相关联的值:dict[k],它将等于该值。
https://stackoverflow.com/questions/41070259
复制相似问题