Pythonリストで重複項目を素早く検索する方法は何ですか?
集合を使うことで重複アイテムを素早く見つけることができます。
Option:
方法1: 重複項目を検索するためにforループとコレクションを使用する
def find_duplicates(lst):
duplicates = set()
for item in lst:
if lst.count(item) > 1:
duplicates.add(item)
return duplicates
lst = [1, 2, 3, 4, 4, 5, 6, 6, 7]
print(find_duplicates(lst))
結果:
{4, 6}
方法2:重複項目を検索するためにリスト内包表記とセットを使用します。
def find_duplicates(lst):
return set([item for item in lst if lst.count(item) > 1])
lst = [1, 2, 3, 4, 4, 5, 6, 6, 7]
print(find_duplicates(lst))
出力:
{4, 6}