4
A
答えて
9
値がハッシュ可能な場合は、重複を削除する最も簡単な、非常識な方法はset
を使用することです:
values = mygenerator()
unique_values = set(values)
しかし、気を付ける:セットは値がもとあったどのような順序覚えていませんこれはシーケンスをスクランブルします。
以下の機能は、目的に応じてset
より優れている可能性があります。これは、順不同で他の値のいずれかを得ることなく、重複を除外し:1つの引数、ハッシュ可能な値の任意の反復可能と
def nub(it):
seen = set()
for x in it:
if x not in seen:
yield x
seen.add(x)
コールnub
を。同じ項目をすべて生成するが、重複を削除したイテレータを返します。
+0
+1、素敵なデコレータ – fmark
3
itertools.groupby()
あなたが少しの作業をしたい場合は、隣接する複製を折りたたむことができます。
print [x[0] for x in itertools.groupby([1, 2, 2, 3])]
+0
入力はソートする必要がありますが、それでも非常に良いです! – Ale
関連する問題
- 1. cv2 pythonでイメージを複製
- 2. Python - 自己複製クラスオブジェクトインスタンスの作成
- 3. Stop Pythonのジェネレータでのイテレーションエラー
- 4. Python再帰的ジェネレータのスコープ
- 5. Pythonでジェネレータのstderrにプリント
- 6. JavaをPythonに複製する
- 7. 複製/複製Javascriptオブジェクト
- 8. Django開発環境の複製/複製
- 9. Python:別のジェネレータを含むジェネレータをフラット化する機能
- 10. データベースの複製
- 11. スレッドの複製?
- 12. 2つのPythonジェネレータの共通項目
- 13. Pythonの日付範囲ジェネレータ(営業日)
- 14. mysql複製の重複エントリ
- 15. ジェネレータ関数の複数のインスタンス
- 16. QtのPython string.split()関数の動作を複製する
- 17. イベント複数の電卓/ジェネレータ? - MatLab
- 18. 重複のないランダム画像ジェネレータC#
- 19. extbaseリポジトリオブジェクトの複製
- 20. NHibernateの複製列
- 21. Jqueryコードの複製
- 22. ユニオンの複製メンバー
- 23. SQLのデータ複製 -
- 24. JavaFXコードの複製
- 25. Pythonでリストのリストを複製しますか?
- 26. Webサービスサービスの追加参照.NETデータ複製の複製
- 27. SLF4J複製
- 28. 複製問題
- 29. 複製データ
- 30. ピクセル複製バグ
いくつかのコードを表示してください...私たちはあなたのジェネレータが何をすべきか知りません。 – ThiefMaster