Python:使用set函数去重且保证原来列表中元素顺序的方法

本文介绍了如何利用Python的set函数进行列表去重,并保持原有元素顺序。set是集合类型,不包含重复元素。为解决去重后顺序混乱的问题,可以先对列表排序,再用set.add()方法添加元素。此外,还提到了set的交集和并集操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

**

set函数

**
set是集合,在集合中不能包含重复的元素,接收一个list作为参数
在使用set()函数对列表中元素进行去重后,列表中的元素会变成乱序。如:

list1=['毛刺','切刀','切刀磨损','异物','切刀表面缺陷']
list2=['毛刺','切刀','切刀磨损']
s=set(list1)
s2=set(list2)
print('s=',s)
print('s2=',s2)
#输出结果
s= {'切刀磨损', '切刀表面缺陷', '异物', '切刀', '毛刺'}
s2= {'切刀', '切刀磨损', '毛刺'}

若要使去重后的元素顺序保持i不变,如:

list1=['毛刺','切刀','切刀磨损','异物','切刀表面缺陷']
list2=['毛刺','切刀','切刀磨损']
s=list(set(list1))
s2=list(set(list2))
s.sort(key=list1.index)
s2.sort(key=list2.index)
print('s=',s)
print('s2=',s2)
#输出结果为
s= ['毛刺', '切刀', '切刀磨损', '异物', '切刀表面缺陷']
s2= ['毛刺', '切刀', '切刀磨损']

s.sort(key = list1.index) #这句代码让sort()方法按照ist1列表中索引顺序进行排列。

往set中添加元素使用add(key)方法,重复的元素自动过滤。通过remove(key)方法可以删除元素:如:

list1=['毛刺','切刀','切刀磨损','异物','切刀表面缺陷']
list2=['毛刺','切刀','切刀磨损']
s=set(list1)
s2=set(list2)
s.add('缺陷')
s2.add('磨损')
s.remove('切刀')
s2.remove('切刀')
print(s2)
print(s)
#输出结果为
{'切刀磨损', '毛刺', '磨损'}
{'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值