在python中从列表中删除重复字符串

在python中从列表中删除重复字符串,python,string,Python,String,如果我有一个字符串列表 a = ["asd","def","ase","dfg","asd","def","dfg"] 如何从列表中删除重复项?使用设置类型删除重复项 a = list(set(a)) 转换为集合: a = set(a) 或者可以选择返回列表: a = list(set(a)) a = [ ... ] s = set(a) a2 = list(s) 请注意,这不会保持秩序。如果要保持秩序,请执行以下操作: seen = set() result = [] for ite

如果我有一个字符串列表

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

如何从列表中删除重复项?

使用设置类型删除重复项

a = list(set(a))
转换为集合:

a = set(a)
或者可以选择返回列表:

a = list(set(a))
a = [ ... ]
s = set(a)
a2 = list(s)
请注意,这不会保持秩序。如果要保持秩序,请执行以下操作:

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

在线查看它的工作情况:

您可以将它们弹出到
集合中,然后返回到列表中:

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

另外,这里的答案和这里的答案一样,只是有一点变化,其实不需要设置

谢谢:)这很管用……这个代码片段保留了顺序吗?它保留了顺序,但具有二次复杂性,这对任何远程大的列表都不好。这太棒了!谢谢