subjects = {
0:9,'fail': 0,
9:14, 'pass': 25,
15:17, 'merit': 40,
18:20,'Distinction': 50
}
我希望上面的字典包含3个维度。用户输入将介于初始数字之间。根据用户输入的数字,应显示以下消息。4分为不及格,0分为及格,10分为25分,依此类推。在
^{pr2}$
我想让循环要求进入标志爱尔兰等
print sum(subjects[name][value] for name in inputs)
这能做到吗?在
Tags:
字典根据键的散列存储其值。在
这意味着字典查找只返回键与查找中使用的键完全匹配的条目。在
你不能让一个键是“3到5范围内的任何数字”而期望找到“4”的查找。在
但是,您可以复制字典条目:
然后像这样收集输入:
^{pr2}$现在,此代码将按您的意愿打印总分:
这不是“三维字典”,也不是类似的东西。这是一个字典,其键是整数,值是两个元素字典(如果需要,可以使用NamedTuple)。但从你的问题来看,你其实并不需要比这更复杂的东西。在
您还可以将值的范围放入元组中,然后这些元组将作为字典的键。(请注意,作为键的列表不起作用,因为它们不可散列。)
然后可以像这样查询字典:
^{pr2}$你可以使用一个自定义范围字典来查找范围。在
编辑:我没有看到python-2.7的tag。用户
super (cls, inst)
而不是super ()
。在相关问题 更多 >
编程相关推荐