只有噹噹前迭代元素不在列表中時,我必須將元素附加到列表中。這裏列表理解是否合適?
>>> 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]
列表內涵給出結果就是我想要的,只是返回的列表是沒用的。這是列表解析的一個很好的用例嗎?
迭代是一個很好的解決方案,但我想知道是否有更習慣的方式來做到這一點?
出於某種原因,我無法再次編輯我的問題。我忘了說我關心元素的順序。 – Paolo
在日常使用中,我必須在所提出的解決方案之間進行調解。 Gerrat的結構緊湊,TokenMacGuy的外觀和速度都很快,而Tyz的位置中間,緊湊而快速,但不那麼直接。感謝偉大的答案。我檢查了格拉特答案,因爲它更接近我原來的意圖。 – Paolo