我有一个 python 列表,其中元素可以重复。
>>> a = [1,2,2,3,3,4,5,6]
我想n从列表中获取第一个唯一元素。所以,在这种情况下,如果我想要前 5 个独特的元素,它们将是:
[1,2,3,4,5]
我想出了一个使用生成器的解决方案:
def iterate(itr, upper=5):
count = 0
for index, element in enumerate(itr):
if index==0:
count += 1
yield element
elif element not in itr[:index] and count>> i = iterate(a, 5)
>>> [e for e in i]
[1,2,3,4,5]
我怀疑这是最佳解决方案。有没有我可以实施的替代策略以更pythonic和有效的方式编写它?