Python 如何使用.get从字典命令中获取随机值?

Python 如何使用.get从字典命令中获取随机值?,python,Python,我正在用.get进行测试,看看它的使用是否比我的其他方法更可行。无论如何我都想学。当前代码返回: None无 我做错什么了吗?还有一个问题,除了之外,我还可以使用其他方法来解决吗 这是我的密码: x = dict(ice_cream_flavors = ['Vanilla', 'Chocolate', 'Cookie-dough', 'Mint-choclate', 'Rainbow'], ice_cream_cones_flavors = ['vanilla-cone',

我正在用
.get
进行测试,看看它的使用是否比我的其他方法更可行。无论如何我都想学。当前代码返回:

None无
我做错什么了吗?还有一个问题,除了
之外,我还可以使用其他方法来解决吗

这是我的密码:

x = dict(ice_cream_flavors = ['Vanilla', 'Chocolate', 'Cookie-dough', 'Mint-choclate', 'Rainbow'],
         ice_cream_cones_flavors = ['vanilla-cone', 'chocolate-cone','cookie-dough-cone', 'mint-cone', 'rainbow-cone'])

y = x.get(random.choice(x['ice_cream_flavors']))
z = x.get(random.choice(x['ice_cream_cones_flavors']))

print(y, z)

您当前的代码不正确,因为您使用“get”从列表中获取某些值。为了从每个dict['value']/列表中获得一个随机值,您应该使用以下命令:

y=random.choice(x.get('ice_cream_flavors'))
z=random.choice(x.get('ice_cream_cones_flavors'))

print(y, z)
#Chocolate vanilla-cone

由于您试图从给定列表中获取随机元素,因此不要使用
get
;这是一个故障安全查找,但是
choice
不会对此数据失败

您的问题是您使用
选项
来获得一种味道。然后你使用
get
在你的字典中查找那种味道。没有这样的条目,只有两个命名的列表。取而代之的是,当你尝到那种味道时,停下来:

y = random.choice(x['ice_cream_flavors'])
z = random.choice(x['ice_cream_cones_flavors'])

print(y, z)
样本输出:

Rainbow vanilla-cone

请阅读。您还可以使用它来帮助逐步可视化代码的执行。当您执行
random.choice(x['icecream\u flavors')
时,您会得到其中一种口味,例如
香草
。然后,使用此值通过
get
访问dict。但是dict只有两个键:
冰淇淋口味
冰淇淋口味
。所以
get
返回默认值,即
None
比其他方法更可行,可以完成什么?工具对于特定用途很有用。这段代码没有展示使用
get
(而不仅仅是执行
\uuu getitem\uuuu
-type
x['icecream\u flavors']
直接查找)的好理由,但这并不意味着没有好理由。“我做错什么了吗?”-我们怎么知道?你甚至没有具体说明你到底想做什么。。。