python中集合查重

python中集合查重

问:python,list如何去重
  1. 答:通过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中有重复的项
  1. 答:可以对第二个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 列表多个元素如何配对去重呢?
  1. 答:每次从列表中取出两个元素,如果第二个元素不在输出列表,就将这两个元素添加到输出列表。
    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)
  2. 答: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判断列表中是否有重复元素
  1. 答:举个栗子:
    原数组长度,与去重后的数据,判断长度,长度相等,则证明无重复项,不相等就说明有重复项
    str=[1,2,3,4,5]
    if len(str)==len(set(str)):
        print "no dump"
    else:
        print "dump"
  2. 答: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集合?
  1. 答:Python的集合是collections
    里面有元祖,列表,集合,字典
    tuple list set dict
    原组是不能修改的列表
    集合是没有重复的列表
    字典是键值对
python中集合查重
下载Doc文档

猜你喜欢