首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python对列表去重的4种方法

开发中对数组、列表去重是非常常见的需求,对一个list中的id进行去重,有下面几种方法,前面两种方法不能保证顺序,后面两种方法可以保持原来的顺序。

下面的代码都在Python3下测试通过,Python2下请自行测试

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]

but,这样的代码不够简洁,不够高端

4.按照索引再次排序

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

formatList=list(set(orgList))

formatList.sort(key=orgList.index)

print(formatList)

结果:

[1,0,3,7,5]

更多文章请前往51Testing软件测试网。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171213A09XPC00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券