在 Python 中从列表中删除重复项
在 Python 中,我们经常遇到包含重复值的列表。要有效地提取唯一值,有多种方法可用。
使用循环和条件检查:
一种方法是迭代列表,检查每个元素是否已在结果列表中。如果没有,则将其附加。此方法很简单,但对于大型列表可能效率较低。
示例:
output = [] for x in trends: if x not in output: output.append(x) print(output)
使用集合:
更有效的解决方案是将列表转换为集合,这会自动删除重复项。集合的查找时间比列表更快,因此非常适合查找唯一值。
示例:
mylist = ['nowplaying', 'PBS', 'PBS', 'nowplaying', 'job', 'debate', 'thenandnow'] myset = set(mylist) print(myset)
转换回列表:
如果您需要结果作为列表,您可以使用 list() 将其转换回来
示例:
mynewlist = list(myset)
从头开始使用集合:
为了提高效率,您可以最初将容器声明为一个集合。这样就无需进行转换,直接维护唯一值。
示例:
output = set() for x in trends: output.add(x) print(output)
订购注意事项:
集合不保留元素的原始顺序。如果保留顺序很重要,您可以使用替代数据结构,例如有序集(有关详细信息,请参阅此问题)。
以上是如何有效地从 Python 列表中删除重复值?的详细内容。更多信息请关注PHP中文网其他相关文章!