Removing duplicate strings from a list in python
本问题已经有最佳答案,请猛点这里访问。
如果我有一个字符串列表,
1 | a = ["asd","def","ase","dfg","asd","def","dfg"] |
如何从列表中删除重复项?
转换为集合:
1 | a = set(a) |
或者选择返回列表:
1 | a = list(set(a)) |
注意这并不能维持秩序。如果要保留顺序:
1 2 3 4 5 6 | seen = set() result = [] for item in a: if item not in seen: seen.add(item) result.append(item) |
在线查看:ideone
1 2 3 4 5 6 7 8 | def getUniqueItems(iterable): result = [] for item in iterable: if item not in result: result.append(item) return result print (''.join(getUniqueItems(list('apple')))) |
同样的事情,这里的答案之一,但有一点变化,设置不是真正需要的!
使用集合类型删除重复项
1 | a = list(set(a)) |
你可以把它们放进一个
1 2 3 | a = [ ... ] s = set(a) a2 = list(s) |