在Python中从列表中移除重复字符串

54 投票
4 回答
135785 浏览
提问于 2025-04-17 06:41

如果我有一个字符串列表,

a = ["asd","def","ase","dfg","asd","def","dfg"]

我该怎么从这个列表中去掉重复的项呢?

4 个回答

6

你可以把它们放进一个 set 里,然后再放回一个列表中:

a = [ ... ]
s = set(a)
a2 = list(s)
16

使用集合类型来去除重复项

a = list(set(a))
103

转换成一个集合:

a = set(a)

或者可以选择再转换回列表:

a = list(set(a))

注意,这样做不会保留原来的顺序。如果你想保留顺序:

seen = set()
result = []
for item in a:
    if item not in seen:
        seen.add(item)
        result.append(item)

在线查看效果: ideone

撰写回答