在 Python 中将字典转换为元组
Manav Narula
2023年1月30日
-
在 Python 中使用
items()
函数把一个字典转换为一个图元组列表 -
在 Python 中使用
for
循环将字典转换为元组列表 - 使用列表推导方法将字典转换为元组列表
-
使用
zip()
函数将字典转换为元组列表
在 Python 中,我们有不同的集合可以使用,有时我们可能需要根据我们的需要将一个集合转换为另一个集合。
在 Python 中,字典是用来存储键值对的。本教程将讨论将这些键值对存储为列表中的元组的不同方法。
在 Python 中使用 items()
函数把一个字典转换为一个图元组列表
items()
函数返回一个视图对象,其中的字典的键值对是一个列表中的元组。我们可以将它与 list()
函数一起使用,以列表的形式获得最终结果。下面的代码实现了这一点。
d1 = {"x": 1, "y": 2, "z": 3}
l1 = list(d1.items())
print(l1)
输出:
[('x', 1), ('y', 2), ('z', 3)]
请注意,在 Python v3.0 以下,iteritems()
函数可以执行同样的功能。
在 Python 中使用 for
循环将字典转换为元组列表
在这个方法中,我们使用 for
循环在字典中迭代。我们使用键来访问元素并创建元组,元组被追加到一个空列表中。下面的代码实现了这个方法。
d1 = {"x": 1, "y": 2, "z": 3}
l2 = []
for i in d1:
tpl = (i, d1[i])
l2.append(tpl)
print(l2)
输出:
[('x', 1), ('y', 2), ('z', 3)]
使用列表推导方法将字典转换为元组列表
列表推导是一种在一行代码中创建列表的优雅方法。对于这个方法,我们将同时使用 for
循环和 items()
函数,如下所示。
d1 = {"x": 1, "y": 2, "z": 3}
l3 = [(v, k) for v, k in d1.items()]
print(l3)
输出:
[('x', 1), ('y', 2), ('z', 3)]
使用 zip()
函数将字典转换为元组列表
zip()
函数通过合并两个可迭代对象并形成一个元组来返回一个 zip
类型的对象。我们可以将这个对象传递给 list()
函数,在一个新的列表中得到最终结果。
d1 = {"x": 1, "y": 2, "z": 3}
l4 = list(zip(d1.keys(), d1.values()))
print(l4)
输出:
[('x', 1), ('y', 2), ('z', 3)]
在上面的代码中,我们使用 keys()
和 values()
函数分别从字典中获取键和值的列表,并使用 zip()
函数将它们合并。
作者: Manav Narula
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn