码迷,mamicode.com
首页 > 编程语言 > 详细

Python代码实现删除一个list里面的重复元素

时间:2016-08-01 21:15:42      阅读:1080      评论:0      收藏:0      [点我收藏+]

标签:

 

方法一:是利用map的fromkeys来自动过滤重复值,map是基于hash的,大数组的时候应该会比排序快点吧

方法二:是用set(),set是定义集合的,无序,非重复

方法三:是排序后,倒着扫描,遇到已有的元素删之

 

============================================================

#!/usr/bin/python
#coding=utf-8
‘‘‘
Created on 2012-2-22
Q: 给定一个列表,去掉其重复的元素,并输出
‘‘‘
def distFunc1():
    a=[1,2,4,2,4,5,6,5,7,8,9,0]
    b={}
    b=b.fromkeys(a)
    print b
    #print b.keys()
    a=list(b.keys())
    print a
    
def distFunc2():
    a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3]
    a=list(set(a)) # set是非重复的,无序集合。可以用list来的排队对set进行排序,list()转换为列表,a.sort来排序
    print a
    
def distFunc3():
    #可以先把list重新排序,然后从list的最后开始扫描,代码如下:
    List=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3]
    if List:
        List.sort()
        #print List
        last = List[-1]
        #print last
        for i in range(len(List)-2, -1, -1):
            if last==List[i]: 
                del List[i]
            else: last=List[i]


    
if __name__ == ‘__main__‘:
    distFunc1()
    distFunc2()
    distFunc3()

 

 

Python代码实现删除一个list里面的重复元素

标签:

原文地址:http://www.cnblogs.com/xiaodi914/p/5727143.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!