我想从以下列表中获取唯一值:
['nowplaying', 'PBS', 'PBS', 'nowplaying', 'job', 'debate', 'thenandnow']
我需要的输出是:
['nowplaying', 'PBS', 'job', 'debate', 'thenandnow']
此代码有效:
output = []
for x in trends:
if x not in output:
output.append(x)
print(output)
我应该使用更好的解决方案吗?
原文由 savitha 发布,翻译遵循 CC BY-SA 4.0 许可协议
首先正确声明您的列表,以逗号分隔。您可以通过将列表转换为集合来获取唯一值。
如果您进一步将其用作列表,则应通过执行以下操作将其转换回列表:
另一种可能更快的可能性是从一开始就使用一个集合,而不是一个列表。那么你的代码应该是:
正如已经指出的那样,集合不保持原始顺序。如果你需要,你应该寻找一个 有序的集合 实现(更多信息请参见 这个问题)。