リストの中から重複した値を取り除き、別のリストを作成したいです。
Python3
1example = [1, 1, 2, 3, 4, 3, 3, 5, 2, 2, 1]
上記のようなリストがあったとすると、
Python3
1list2 = [1, 2, 3, 4, 3, 5, 2, 1]
のように、隣り合った値での重複を排除していきたいです。
Python3
1example = [1, 1, 2, 3, 4, 3, 3, 5, 2, 2, 1] 2list2 = [] 3for i, r in zip(example[:-1], example[1:]: 4 if list2 is None: 5 list2.append(i) 6 else: 7 if i != r: 8 list2.append(r)
上記のような処理を考えてみたのですが、上記を実行して得られるリストは、
list2 = [2, 3, 4, 3, 5, 2, 1]
となってしまい、最初の1
が含まれない状態です。
for文の中の最初のif文が不要なのかとも思い、最初のif文がないバージョンも試してみたのですが、やはり求めている結果が出ませんでした。
どのようにすれば、上記の例のような結果を得られるのでしょうか?また、より良い処理の仕方があると思いますので、お教え頂ければ幸いです。
よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー