技术文章 > 常见问题 >  Python常见问题 > 正文

python中如何实现列表去重不打乱顺序?

宋雪维

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

方法一:使用集合set去重

l1 = ['b','c','d','b','c','a','a']
l2 = sorted(set(l1),key=l1.index)
print l2

方法二:使用用sort()中的key字段进行设定

#随便创建一个有重复数据的列表
lt1 = [0,1,2,3,4,4,5,5,6,12,6,7,7,8,8,8,8,9,9,10,11,10,64]
#把列表二次转换
lt = list(set(lt1))
#index()是为了从列表中找到某个值第一项的索引位置,
#sort(key,reverse)是改变原来列表的元素位置,不会生成一个新列表,reverse默认是true,就是升序。
lt.sort(key=lt1.index)
print(lt)

方法三:使用reduce()函数去重

list = [1,4,3,3,4,2,3,4,5,6,1]
func = lambda x,y:x if y in x else x + [y] In 
reduce(func, [[], ] + list)
输出结果:
[1, 4, 3, 2, 5, 6]

以上就是python中三种列表去重但不打乱顺序的方法,大家可以直接套用使用哦~

免费视频教程
本教程部分素材来源于网络,版权问题联系站长!
相关文章
  python绘制热力图有何方法?
  python中extend()方法如何实现列表合并?
  python中append()和extend()区别详解
  python中实现列表合并的方法有哪些?
  python中如何使用zip函数将列表合并为字典?
  python中如何用集合set给列表去重?
相关视频章节
  Python蟒蛇绘制举一反三
  Python概述
  安装Python
  python注释
  python编码规范
视频教程分类