【发布时间】:2016-11-09 09:49:30
【问题描述】:
我必须检查一个键是否在字典中。如果它在那里,我必须在变量处分配键的值,否则创建一个带有 raw_input 值的新键。我写了下面的代码,但它不起作用。我必须检查密钥是否在字典中。
例如,我有一个食谱数据库。 “油”几乎出现在所有食谱中,因此我无法为所有数据库行插入 raw_input。所以我想创建一个字典并在那里选择值。
例如,在数据库中,我有 100 行成分为“油”。我将此数据库与另一个匹配。关键是成分的名称(在本例中为“油”),值是特性(玉米油)。带有“油”键的每一行都必须有“玉米油”的值。我可以用字典做这个吗?
dict={}
for item in list:
#if the item is not in the list, I assign new value for a raw_input
if dict.get(item) is None:
dict[item]=value
#if the item is in the list, I assing the previous value
else:
dict[item]=value
你能帮帮我吗? 非常感谢。
【问题讨论】:
-
目前您的代码只是将
value插入到字典中,而不管密钥是否存在。你的问题是什么?您期望会发生什么以及实际发生了什么?请澄清一下。 -
你在 if 和 else 中做同样的事情,你期望发生什么?
-
我必须检查密钥是否在字典中。如果键在字典中,我必须在新变量中分配相同的值,否则我必须键入一对{键:值}。例如,我有一个食谱数据库。 Salt几乎是全部,所以我不能为所有数据库行插入一个raw_input。我想创建一个字典并在那里选择值。
-
确实,
if两个分支都做同样的事情。要检查密钥item是否存在于dict_中,请写入if item in dict_:。另外,不要重新定义内置名称:dict是类型名称。 -
如果你能给出示例列表和你想要的最终结果的字典,那就太好了。因为你问的我不清楚
标签: python python-2.7 list dictionary