📜  Python – 字典中的键值列表配对(1)

📅  最后修改于: 2023-12-03 15:34:08.147000             🧑  作者: Mango

Python – 字典中的键值列表配对

在Python中,我们可以使用字典(dictionary)来存储键值对。有时候我们需要把字典中的键和值分别取出来,然后配对起来。这时候我们可以使用zip函数。

zip函数

zip函数可以将两个或多个序列压缩成一个同时包含所有序列值的元组列表。它接收任意多个序列作为参数,返回一个zip对象,这个对象可以用list()函数转换为列表。

下面是zip函数的语法:

zip(*iterables)

其中,iterables是一个或多个序列,它们将被并行迭代,并且由zip函数的结果配对。zip函数将返回一个zip对象,元素为迭代器。

代码示例

假设我们有一个字典,其中键是人名,值是他们的成绩:

scores = { 'Alice': 70, 'Bob': 80, 'Chris': 90 }

我们可以使用zip函数把它拆分成两个列表,一个是人名列表,一个是成绩列表:

names = list(scores.keys())
grades = list(scores.values())

接着,我们可以把这两个列表压缩成一个新的列表,其中每个元素都是一个元组,第一个元素是人名,第二个元素是成绩:

pairs = list(zip(names, grades))

现在,我们就得到了一个pairs的列表,它包含了每个人的名字和他们对应的成绩:

[('Alice', 70), ('Bob', 80), ('Chris', 90)]

我们也可以用zip函数来实现反向操作,也就是把一个包含有键值对元组的列表转换回字典:

new_scores = dict(zip(names, grades))
结论

使用zip函数可以轻松地将字典中的键和值拆分成两个列表,并配对成新的元组列表。相反,也可以使用zip函数来将包含有键值对元组的列表转换回字典。这对于数据处理和分析来说非常有用。