Python如何对列表进行去重

Python025

Python如何对列表进行去重,第1张

1.使用set的特型,python的set和其他语言类似,是一个无序不重复元素集

orgList=[1,0,3,7,7,5]

#list()方法是把字符串str或元组转成数组

formatList=list(set(orgList))

print(formatList)

结果

[0,1,3,5,7]                                                                                     

2.使用keys()方法

orgList=[1,0,3,7,7,5]

#list()方法是把字符串str或元组转成数组

formatList=list({}.fromkeys(orgList).keys())

print(formatList)

结果:

[0,1,3,5,7] 

上面两种方法的问题是:结果是没有保持原来的顺序。

3.循环遍历法

orgList=[1,0,3,7,7,5]

formatList=[]

foridinorgList:

ifidnotinformatList:

formatList.append(id)

print(formatList)

结果:

[1,0,3,7,5]

这样的代码不够简洁

4.按照索引再次排序

orgList=[1,0,3,7,7,5]

formatList=list(set(orgList))

formatList.sort(key=orgList.index)

print(formatList)

结果:

[1,0,3,7,5]

可以利用set去重

代码如下:

# coding = utf-8

li = [1,2,3,4,2,1,3,0]  # 列表

li2 = set(li)

print(li2)