2017-12-17 4 views
0

Codefightsでコーディングの問題を解決していましたが、私はALMOSTで解決しましたが、コードの問題が発生し、問題を解決する方法が見つかりません。リストで削除する重複値を指定する方法python 3

my_list = [1, 2, 3, 4, 3, 6] 
print(my_list.index(3)) 

出力:2

print(my_list[4]) 

出力:3 しかし、ここで私は、インデックス4の上にある3を削除しようとすると、Pythonは第二インデックスに3を除去し、そして、問題です私はこれが起こることを望んでいない。たとえば :

my_list.remove(my_list[4]) 
print(my_list) 

出力:[1, 2, 4, 3, 6] 私のように出力を取得したい:これは私の実際のコードが、ちょうど例ではありません[1, 2, 3, 4, 6]

。できれば私を助けてください。

+2

セットに変換すると、重複する値はすべて削除されます。 my_set = set(my_list) –

+2

[del、remove、pop on listsの違い](https://stackoverflow.com/questions/11520492/difference-between-del-remove-and-pop-on-lists) –

答えて

1

これは実際に予想される出力です。代わりにdelを使用してください。

my_list.remove(3) 

my_list[4]以来の復帰3、その後の最初の発生を削除します:

my_list.remove(my_list[4]) 

この行に変換します。

del my_list[4] 

それは働いていなかった理由は、このラインを使用することです3をリストに追加します。

関連する問題