将python列表中的值复制到字典中

时间:2015-04-12 18:10:08

标签: python

如果我有一个清单,

lstValues=[1, 2, "cat", "meow"]

我有一个带键的字典如下:

data {id, count, animal, sound}

如果我正在读取格式如下的文件:

#id count animal sound
10 1 tiger purr
11 2 lion roar

我正在读取文件并且每行都被拆分以返回上述格式的列表,有没有办法将列表中的值附加到字典?

因此,如果我要求的是可能的话,我将能够做到这样的事情:

data.append(lstValues)

我知道字典键没有设定顺序。我很确定这是不可能的,但我想要确认。

编辑:我想避免进行手动分配。我知道dicts不支持我提供的语法作为一个例子,这就是我说“类似”的原因。

2 个答案:

答案 0 :(得分:2)

这是一个快速的方法:

keys = ["id", "count", "animal", "sound"]

lstValues = [1, 2, "cat", "meow"]

data = dict(zip(keys, lstValues))

zip函数将两个列表组合成一个元组列表(每个元组是一个键和一个值)。 dict函数将元组列表转换为字典。

答案 1 :(得分:0)

如果数据是dict,那么你就不能使用append。 试试这个 -

data = {}
data['id'] = lstValues[0]
data['count'] = lstValues[1]
data['animal'] = lstValues[2]
data['sound'] = lstValues[02]
print data