如何从字典中获取随机项目和随机值

时间:2021-01-09 18:27:16

标签: python

我正在尝试从其中一种冰淇淋口味中获取随机值。我试过使用随机的、流行的项目,但它们都打印出整行。虽然我正在尝试获取其中一个值(锥体风味)和一种风味。

dict = {
    "vanilla": ["vanilla-cone", "chocolate-cone","cookie-dough-cone", "mint-cone", "rainbow-cone"],
    "Chocolate": ["vanilla-cone", "chocolate-cone","cookie-dough-cone", "mint-cone", "rainbow-cone"],
    "Cookie-dough": ["vanilla-cone", "chocolate-cone","cookie-dough-cone", "mint-cone", "rainbow-cone"],
    "Mint-Chocolate": ["vanilla-cone", "chocolate-cone","cookie-dough-cone", "mint-cone", "rainbow-cone"],
    "Rainbow": ["vanilla-cone", "chocolate-cone","cookie-dough-cone", "mint-cone", "rainbow-cone"]
}

print (dict.popitem())
or 
print(random.choice(list(dict.items())))

Expected Output:
{"Mint-Chocolate": "vanilla-cone"}

3 个答案:

答案 0 :(得分:1)

在您的代码之后尝试以下代码:

flavor = random.choice(list(dict))
seq = ["vanilla-cone", "chocolate-cone","cookie-dough-cone", 
"mint-cone", "rainbow-cone"]
cone = random.choice(seq)
print(flavor, ":", cone)

答案 1 :(得分:0)

发生这种情况是因为 dict.items 返回键值元组对,如果您想要特定风味,则需要选择一个键,然后从风味列表中再次选择特定风味 试试这个代码

print(random.choice(dict[random.choice(list(dict.keys()))]))

您也可以直接从这样的值中进行选择

print(random.choice(random.choice(list(dict.values()))))

答案 2 :(得分:0)

我认为您对字典的使用是错误的,因为如果我理解正确,您想创建一个具有随机口味和随机锥体的随机冰淇淋。

这是此场景的示例,仅使用一个列表和 random.choice 两次。

import random

flavors = ['vanilla', 'chocolate', 'cookie-dough', 'mint-chocolate', 'rainbow']

cone = random.choice(flavors) + '-cone'
icecream = random.choice(flavors)