意见箱
恒创运营部门将仔细参阅您的意见和建议,必要时将通过预留邮箱与您保持联络。感谢您的支持!
意见/建议
提交建议
配置详情
本产品仅限新用户首购专享!每人限购1台,续费5折
当前配置
数据中心: {{ getconfigInfoArea(productDetailInfo) }}
套餐规格: 2 核 2 G
带宽:
系统盘 {{ validateMySplit(ProductVM.getProductappointInfoBykey(productDetailInfo,'云系统盘'),'|',1) }} 性能型
IP 数 1 个
可选配置
操作系统:
VPC:
安全组:
购买时长:
1 月
我已阅读并同意《恒创科技服务协议》
购买前请阅读协议并勾选同意

python列表如何去重复

来源:互联网 编辑:云晓生
2024-04-07 21:00:57

在Python中,可以使用以下几种方法去除列表中的重复元素:

1、使用set()函数

2、使用列表推导式


python列表如何去重复

3、使用for循环和if条件判断

4、使用sorted()函数和enumerate()函数

下面分别介绍这四种方法:

1. 使用set()函数

将列表转换为集合(set),集合中的元素是唯一的,然后再将集合转换回列表,这种方法会改变原列表的顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
lst_no_duplicates = list(set(lst))
print(lst_no_duplicates)

输出结果:

[1, 2, 3, 4, 5]

2. 使用列表推导式

通过列表推导式,遍历列表中的每个元素,如果元素不在新列表中,则将其添加到新列表中,这种方法会保留原列表的顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
lst_no_duplicates = []
[lst_no_duplicates.append(i) for i in lst if i not in lst_no_duplicates]
print(lst_no_duplicates)

输出结果:

[1, 2, 3, 4, 5]

3. 使用for循环和if条件判断

通过for循环遍历列表中的每个元素,如果元素不在新列表中,则将其添加到新列表中,这种方法会保留原列表的顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
lst_no_duplicates = []
for i in lst:
    if i not in lst_no_duplicates:
        lst_no_duplicates.append(i)
print(lst_no_duplicates)

输出结果:

[1, 2, 3, 4, 5]

4. 使用sorted()函数和enumerate()函数

首先对列表进行排序,然后使用enumerate()函数遍历排序后的列表,如果当前元素与前一个元素不同,则将其添加到新列表中,这种方法会保留原列表的顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
lst_no_duplicates = []
for i, num in sorted(enumerate(lst), key=lambda x: x[1]):
    if i == 0 or num != lst[i 1]:
        lst_no_duplicates.append(num)
print(lst_no_duplicates)

输出结果:

[1, 2, 3, 4, 5]
本网站发布或转载的文章均来自网络,其原创性以及文中表达的观点和判断不代表本网站。
上一篇: python3中复数如何表示 下一篇: python如何关闭串口