在 Python 中将元组列表转换为数字

pythonserver side programmingprogramming更新于 2026/1/13 16:44:17

Python 具有多种数据处理功能。我们有一个场景,其中我们得到一个列表,该列表的元素是作为元组的一对数字。在本文中,我们将了解如何从列表的元组元素中提取唯一数字。

使用 re 和 set

我们可以使用正则表达式模块及其名为 sub 的函数。它用于替换与正则表达式匹配的字符串,而不是完全匹配。因此,我们设计一个正则表达式将元组转换为普通字符串,然后应用 set 函数获取唯一数字。

示例

import re
listA = [(21, 3), (13, 4), (15, 7),(8,11)]
# 给定列表
print("给定列表:\n", listA)
temp = re.sub(r'[\[\]\(\), ]', '', str(listA))
# 使用 set
res = [int(i) for i in set(temp)]
# 结果
print("数字列表:\n",res)

输出

运行上述代码得到以下结果 −

给定列表:
[(21, 3), (13, 4), (15, 7), (8, 11)]
数字列表:
[1, 3, 2, 5, 4, 7, 8])

使用 chain 和 set

itertools 模块提供了 chain 方法,我们可以使用它从列表中获取元素。然后创建一个空集并继续将元素逐一添加到该集合中。

示例

from itertools import chain
listA = [(21, 3), (13, 4), (15, 7),(8,11)]
# 给定列表
print("给定列表:\n", listA)
temp = map(lambda x: str(x), chain.from_iterable(listA))
# 使用 set 和 add
res = set()
for i in temp:
   for elem in i:
      res.add(elem)
# 结果
print("数字集:\n",res)

输出

运行上述代码得到以下结果 −

给定列表:
[(21, 3), (13, 4), (15, 7), (8, 11)]
数字集:
['1', '3', '2', '5', '4', '7', '8'])

相关文章


有用资源