我有一个列表:somelist= ['a','b','c','d']
我希望有一个python字典,密钥为"key1"
,值为'a','b','c','d'
。
d={}
for l in somelist:
d["key1"]=l
仅返回{key1:' d'},但不返回值作为列表。
我该怎么做?
答案 0 :(得分:3)
当你这样做时
for l in somelist:
你循环遍历somelist
的每个元素。在这种情况下,每个元素都是一个字符串,所以当你这样做时:
d["key1"] = l
您要将当前元素指定为字典"key1"
的键d
的值。在每次迭代时,此值将被覆盖,因此最后,您将只有一个元素,最后一个元素'd'
。
你能做什么?只需将整个列表指定为值:
d["key1"] = some_list
无需使用for
循环。
答案 1 :(得分:2)
您循环遍历列表并每次为同一个键分配新值。
将一些值分配给单个键的一种方法是将列表分配给该键:
d["key1"] = some_list
然后使用索引访问元素:
>>> d["key1"][0]
>>> 'a'