Подходит ли здесь понимание списка?

Я должен добавлять элементы в список только в том случае, если текущий повторяемый элемент еще не находится в списке.

>>> l = [1, 2]
>>> for x in (2, 3, 4):
...     if x not in l:
...             l.append(x)
... 
>>> l
[1, 2, 3, 4]

vs

>>> l = [1, 2]
>>> [l.append(i) for i in (2, 3, 4) if i not in l]
[None, None]
>>> l
[1, 2, 3, 4]

Понимание списка дает результат, который я хочу, просто возвращенный список бесполезен. Это хороший вариант использования для понимания списков?

Итерация - хорошее решение, но мне интересно, есть ли более идиоматический способ сделать это?

5
задан Jonathan Leffler 4 August 2011 в 09:32
поделиться