You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何删除Python列表中的重复元素?含具体示例需求

嘿,这个问题太常见啦,我给你整理了几种实用的解决办法,都能轻松处理你的需求~

方法1:用集合快速去重(注意顺序问题)

集合(set)的核心特性就是元素唯一,所以转成集合再转回列表就能快速完成去重,不过这种方法会打乱原列表的元素顺序,如果不介意顺序的话,这是最简洁的方式:

dup_list = ['he', 'he', 'sh', 'sh', ' jk', 'jk', 'gf', 'gf']
new_list = list(set(dup_list))
# 输出可能类似 ['gf', 'he', 'sh', ' jk', 'jk'](顺序不固定)
方法2:保持原顺序的手动遍历去重

如果你需要保留元素第一次出现的顺序,手动遍历判断是最直观的方式,完全贴合你想要的结果逻辑:

dup_list = ['he', 'he', 'sh', 'sh', ' jk', 'jk', 'gf', 'gf']
new_list = []
for item in dup_list:
    if item not in new_list:
        new_list.append(item)
print(new_list)  # 输出: ['he', 'sh', ' jk', 'jk', 'gf']

注:这里' jk'和'jk'会被当成不同元素保留,因为它们的字符串内容存在差异~如果需要忽略空格这类细节,可以在判断前先对item做处理,比如用item.strip()去除首尾空格。

方法3:用字典键去重(Python 3.7+)

Python 3.7及以上版本的字典会严格保留插入顺序,而字典的键本身具备唯一性,所以用dict.fromkeys()可以一步完成去重+保序,代码更简洁优雅:

dup_list = ['he', 'he', 'sh', 'sh', ' jk', 'jk', 'gf', 'gf']
new_list = list(dict.fromkeys(dup_list))
print(new_list)  # 输出: ['he', 'sh', ' jk', 'jk', 'gf']

内容的提问来源于stack exchange,提问作者Drunk Codes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:27:23