Python 重複リストを操作する時に覚えておくといいもの

リストに重複要素があるかどうかの真偽値

names = [ 'b', 'c', 'a', 'd', 'e', 'b', 'f', 'c' ]
if len(names) > len(set(names)):
    print('list に重複要素がある')

set(list) で重複を場外したリストの数と
リストそのままの要素数を比較する方法

重複してるものだけの要素を求める。
リスト.count(x) で個数をカウントしてリスト内包表記で求める

names = [ 'b', 'c', 'a', 'd', 'e', 'b', 'f', 'c' ]
duplies = [e for e in set(names) if names.count(e) > 1]

print(duplies)
# ['c', 'b']

重複を除外たリストにする。(GROUP BY)

unieques = list(set(names))

set() → set 型 → list では set がユニークにした時に、順序は元の順序にならない。

ユニークにした時に、順序は元の順序を保つには、
元のリストの並び index で sorted でソートする

unieques = sorted(set(names), key=names.index)

print(unieques)
# ['b', 'c', 'a', 'd', 'e', 'f']