1. 程式人生 > >【Python】列表去重方法

【Python】列表去重方法

如題:python中列表去重,使用三種基礎方法。

使用集合

  • 集合中的元素是唯一的,所以利用集合進行去重
list1 = [2, 3, 56, 5, 5, 3 ]

def func1(list1):  
	    ''''' 使用集合 '''  
	    return list(set(list1))

使用列表推導式

def func2(list1):  
	    ''''' 使用列表推導的方式 '''  
	    temp_list=[]  
	    for one in list1:  
	        if one not in temp_list:
temp_list.append(one) return temp_list

利用字典key的唯一性

  • 字典的key是唯一的,利用{}的fromkeys方法進行去重
  • 原始碼中的fromkeys方法
    def fromkeys(*args, **kwargs): # real signature unknown
        """ Returns a new dict with keys from iterable and values equal to value. """
        pass
  • 具體實現方法:
def func3(list1):  
	    ''''' 使用字典的方式 '''  
	    return {}.fromkeys(list1).keys() 
print(func2(list1))
print(type(func2(list1)))
# 去重結果:dict_keys([2, 3, 56, 5])
# 型別:<class 'dict_keys'>