Python – 删除重复元素的列
pythonserver side programmingprogramming更新于 2025/11/5 7:40:17
当需要删除重复元素的列时,会定义一个方法来创建一个空集。迭代该列表,如果未找到,则将其添加到集合中。
示例
下面是相同的演示
from itertools import chain
def remove_dupes(my_sub):
my_string = set()
for i, elem in enumerate(my_sub):
if elem not in my_string:
my_string.add(elem)
else:
yield i
my_list = [[5, 1, 6, 7, 9], [6, 3, 1, 9, 1], [4, 2, 9, 8, 9], [5, 1, 6, 7, 3]]
print("列表为: ")
print(my_list)
K = 3
temp_idxs = set(chain.from_iterable(remove_dupes(sub) for sub in my_list))
my_result = [[elem for i, elem in enumerate( sub) if i not in temp_idxs] for sub in my_list]
print("结果为: ")
print(my_result)
输出
列表为: [[5, 1, 6, 7, 9], [6, 3, 1, 9, 1], [4, 2, 9, 8, 9], [5, 1, 6, 7, 3]] 结果为: [[5, 1, 6, 7], [6, 3, 1, 9], [4, 2, 9, 8], [5, 1, 6, 7]]
解释
将所需的包导入环境。
定义了一个名为‘remove_dupes’的方法,该方法以列表为参数。
创建一个空集。
枚举列表中的元素,如果未找到元素,则将其添加到空集。
否则,产生枚举的迭代器。
在函数外部,定义了一个列表列表并显示在控制台上。
‘K’的值已定义。
通过迭代来调用该方法。
它被转换为一个集合并分配给一个变量。
再次,它被枚举、迭代并存储在结果变量中。
此结果变量在控制台上显示为输出。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

