Python基础教程:判断列表重复

枫铃3年前 (2021-09-30)Python247

一、判断单个列表中的元素是否存在重复

使用set方法去重后,和原list进行对比,如果相等,那么说明原列表无重复,如果存在重复,说明列表存在重复

def is_repect_all(L):
    repeatList = [];
    setList = set(L);
    flag=True;
    if len(L) != len(setList):
        flag=False;
        print('列表的id存在重复,其中重复项及重复次数如下:');
        for each_item in setList:
            re_count = 0;
            for each_item_L in L:
                if each_item == each_item_L:
                    re_count += 1;
            if (re_count >= 2):
                print(each_item, L.index(each_item), ": ", re_count);

                # print(all_gameid_List[L.index(each_item)]);
        return flag,re_count;

    else:
        return flag;

二、判断两个列表是否重复:

#判断两个列表是否含有重复项
#方法有多种,此处选择最简单的方法,使用set()
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def is_repeat_alls(L1,L2):
    if(len(L1)==0 or len(L2)==0):
        return '无法比对,原因:其中一个list为空';
    else:

     #L1单列表去重输出
     set_L1=set(L1);
     #L2单列表去重输出
     set_L2=set(L2);
     #输出L1、L2合集
     set_L3=set_L1&set_L2;
     #将合集去重,并转换成list,注意,set不是迭代器
     list_L3=list(set_L3);
     if(len(list_L3)==0):
         #如果列表为空,则表示没有重复项,则测试通过
        print('无重复项,通过');
     else:
         #如果列表不为空,则表示存在重复项,则表示测试失败,此时打印出列表即可
         print('测试不通过,存在重复项');
         return '共'+str(len(list_L3))+'个重复,分别为:',list_L3;

相关文章

Python教程:hashlib加密

一、哈希 1. 什么是...

Python:如何仅用递归函数和栈操作逆序一个栈

如何仅用递归函数和栈操作逆序一个栈题目:一个栈依次压入1,2,3,4,5,...

python中使用for循环,while循环,一条命令打印99乘法表

用for循环打印九九乘法表: for i in range (1,10): for j in range(1,10):...

python的22个基本语法

“人生苦短,我用Python”。Python编程语言是最容易学习、并且功能强大的语言。只需会微信聊天、懂一点英文单词即可学会Python编程语言...

python3中reduce函数的使用

在python3中如果使用reduce需要先导入 from functools import reduce reduce函数,reduce...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。