1. 程式人生 > >python實現給定一個列表判斷裡面是否有重複元素

python實現給定一個列表判斷裡面是否有重複元素

題目很簡單,只是簡單溫習一個方法,most_common,這是collection模組中Counter類的方法,具體方法用法可以去查

下面是簡單的實現:

#!usr/bin/env python
#encoding:utf-8


'''
__Author__:沂水寒城
功能:給定一個列表判斷裡面是否有重複元素
'''

from collections import Counter


def func1(num_list):
    '''
    直接使用set方法
    '''
    if len(num_list)!=len(set(num_list)):
        print 'have duplicates!!!'
    else:
        print 'no duplicates!!'


def func2(num_list):
    '''
    使用collection的Counter類
    '''
    cou=Counter(num_list)
    first=cou.most_common(1)
    if first[0][1]>1:
        print 'have duplicates!!!'
    else:
        print 'no duplicates!!'


if __name__ == '__main__':
    num_list=[[1,2,3,4],[6,7,8],[4,5,6,6,6]]
    for one_list in num_list:
        print 'one_list', one_list
        func1(one_list)
        func2(one_list)


結果如下:

one_list [1, 2, 3, 4]
no duplicates!!
no duplicates!!
one_list [6, 7, 8]
no duplicates!!
no duplicates!!
one_list [4, 5, 6, 6, 6]
have duplicates!!!
have duplicates!!!
[Finished in 0.3s]