python之中的列表是能够来保存任意类型和任意多数据的,而且数据是可以重复存在的。但是在有些时候需要使用列表可以更改的特性,但是又不能有重复元素,所以就需要将列表进行去重操作。下文所主要介绍的内容为,python使用迭代器来去重列表,往下看看吧。
1.迭代器需要导入内置模块itertools才可以使用,然后就定义一个列表对象,随便添加一些数据进去就可以了。为了实现模块化开发和提高代码复用性,可以定义函数来完成列表去重操作。之后只需要执行该py脚本并且传入列表数据即可,代码如下所示:
import itertools list_5= [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1] def func5(list_5):
2.在函数之中需要先使用sort()方法来将列表元素进行排序,排序的规则就是按照数字、英文、中文、数字大小和元素首字母大小来正序排序。之后再对排序过后的列表对象调用迭代器模块中的方法groupby()进行分组操作,这个方法可以将列表中相邻重复元素放在一起。再定义空列表来作为函数返回结果,示例如下:
list_5.sort() temp_list= itertools.groupby(list_5) result_list=[]
3.最后一步就是要去使用for循环迭代分组之后的列表了,迭代时会返回两个变量。一个变量为组名,另一个变量则是该组包含的元素。只需要使用append()方法将组名变量添加到空列表中即可,这是因为组名实际上就是这些重复元素的唯一值,详细代码示例如下所示:
for i,j in temp_list: result_list.append(i) return result_list print(func5(list_5))
以上就是关于“Python列表怎么迭代去重?Python如何使用迭代器去重列表”的全部内容了,希望对你有所帮助。