【发布时间】:2015-12-29 00:43:32
【问题描述】:
是
list(set(some_list))
从列表中删除重复项的好方法? (如果重要,Python 3.3)
(针对某些 cmets 进行了编辑……之前可能过于简洁)。
具体来说,
- 至少在效率(主要是速度,还有内存)方面是否比编写自己的算法更好;这显然是最简洁的代码
- 可靠吗?任何情况下它都会中断? (已经提到过一个......列表项需要是可散列的)
- 有没有更 Pythonesque 的方法?
【问题讨论】:
-
是的,当然。那么你的问题是什么?
-
您确定好的指标是什么?正在比较哪些替代方案?这是在时间复杂度和/或内存消耗方面吗?
-
如果列表项不可散列,则不会。
-
是否需要维护列表中项目的顺序?
-
@EelkeSpaak 值得回答。