python中集合查重
2022-04-17阅读(483)
问:python,list如何去重
- 答:通过set来去重
>>> l = [1,2,3,4,5,2,1,3,45,3,21,12,4]
>>> set(l)
set([1, 2, 3, 4, 5, 12, 45, 21])
>>> print list(set(l))
[1, 2, 3, 4, 5, 12, 45, 21]
>>>
问:如何找出Python list中有重复的项
- 答:可以对第二个list的元素进行遍历,检查是否出现在第二个list当中,如果使用表理解,可以使用一行代码完成任务。
list1 = [1,2,3,4,5]
list2 = [4,5,6,7,8]
print [l for l in list1 if l in list2]
# [4,5]
如果每一个列表中均没有重复的元素,那么还有另外一种更好的办法。首先把两个list转换成set,然后对两个set取交集,即可得到两个list的重复元素。
set1 = set(list1)
set2 = set(list2)
print set1 & set 2
# {4,5}
问:python 列表多个元素如何配对去重呢?
- 答:每次从列表中取出两个元素,如果第二个元素不在输出列表,就将这两个元素添加到输出列表。
source = ["a","1","b","1","c","2","d","3","e","4","c","3"]
out = []
for e in zip(source[0::2],source[1::2]):
....if e[1] not in out:
........out = out + list(e)
print(out) - 答:1.使用set的特型,python的set和其他语言类似, 是一个无序不重复元素集 1 2 3 List=[1,0,3,7,7,5] #list()方...
2.使用keys()方法 1 2 3 List=[1,0,3,7,7,5] ...
3.循环遍历法 1 2 3 4 5 List=[1,0,3,7,7,5] ...
4.按照索引再次排序 1 2 3 4
问:python判断列表中是否有重复元素
- 答:举个栗子:
原数组长度,与去重后的数据,判断长度,长度相等,则证明无重复项,不相等就说明有重复项
str=[1,2,3,4,5]
if len(str)==len(set(str)):
print "no dump"
else:
print "dump" - 答:list_no = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for i in list_no:
if list_no.count(i) != 1:
print ("重复数为:"), i
print ("重复个数为:"), list_no.count(i)
break
问:python集合?
- 答:Python的集合是collections
里面有元祖,列表,集合,字典
tuple list set dict
原组是不能修改的列表
集合是没有重复的列表
字典是键值对