python学习之列表去重的几种方法

文章介绍了Python列表去重的几种方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下。

1、利用for循环的方式

# *_* coding : UTF-8 *_*

city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']
ncity = [] # 定义一个空列表
for item in city: # 遍历列表city
    if item not in ncity: # 如果item不在ncity,则添加到ncity
        ncity.append(item)
print (ncity)
['上海', '广州', '成都', '北京']

2、利用set()函数

set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据。

# *_* coding : UTF-8 *_*

city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']
ncitx=list(set(city))
print(ncitx)

['广州', '成都', '上海', '北京']

3、利用sort()排序

# *_* coding : UTF-8 *_*

city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']

ncitx=list(set(city))
ncitx.sort( key=city.index)
print(ncitx)

['上海', '广州', '成都', '北京']

4、利用sort()排序后,迭代

# *_* coding : UTF-8 *_*

city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']
city.sort()
for x in city:
     while city.count(x)>1:
         del city[city.index(x)]

print(city)

['上海', '北京', '广州', '成都']

5、巧用字典

# *_* coding : UTF-8 *_*

city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']
mylist = list({}.fromkeys(city).keys())  # fromkeys() 函数创建一个新字典,获取新字典的键(唯一值)
print (mylist)

['上海', '广州', '成都', '北京']

到此这篇关于Python列表去重的文章就介绍到这了。希望对大家的学习有所帮助。

你可能感兴趣的:(python,python,学习,开发语言)