items()の代わりにiteritems()を使用する必要があるのはいつですか?

user248237:

すべての場所items()iteritems()なく使用することは合法ですか?なぜiteritems()Python 3から削除されたのですか?素晴らしくて便利な方法のようです。その背後にある理由は何ですか?

編集:明確にするために、Python 2とPython 3の両方と互換性のある方法で、ジェネレーターのような方法(一度に1つのアイテム、すべてがメモリではない)で辞書を反復するための正しいイディオムは何かを知りたい?

Jon Clements:

Python 2.xでは- .items()(キー、値)のペアのリストを返しました。Pythonの3.xのでは、.items()今でitemview異なる振る舞いオブジェクト、 -それはので、持って繰り返し処理するために、またはマテリアライズド...だから、list(dict.items())何であったかのために必要とされるdict.items()のPython 2.xでは

Python 2.7にはviewkeysviewitemsviewvaluesメソッドがあるという点で、キー処理用のバックポートが少しあります。最も便利viewkeysなのは、set(から期待されるdictaのように動作することです

簡単な例:

common_keys = list(dict_a.viewkeys() & dict_b.viewkeys())

共通キーのリストが表示されますが、Python 3.xでは、.keys()代わりに使用してください。

Python 3.xは一般に、より「怠惰」になるように作られています。つまりmap、今itertools.imapzip効果的ですitertools.izip

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

新しい例外の代わりにThrowableを使用する必要があるのはいつですか?

分類Dev

boolの代わりにatomic <bool>を本当に使用する必要があるのはいつですか?

分類Dev

UIButtonの代わりにanyObjectを迅速に使用する必要があるのはいつですか?

分類Dev

AngularでrouterLinkの代わりにhrefを使用する必要があるのはいつですか?

分類Dev

Z3で変数の代わりに関数を使用する必要があるのはいつですか?

分類Dev

@Serviceの代わりに@Componentを使用する必要があるのはいつですか?

分類Dev

JSONFieldの代わりにHStoreFieldを使用する必要があるのはいつですか?

分類Dev

Forループの代わりにマップを使用する必要があるのはいつですか?

分類Dev

クラスの代わりに構造体を使用する必要があるのはいつですか?

分類Dev

Memcachedの代わりにMemcacheを使用する必要があるのはいつですか?

分類Dev

クラスの代わりに構造体を使用する必要があるのはいつですか?

分類Dev

10進数の代わりにdoubleを使用する必要があるのはいつですか?

分類Dev

クラスの代わりに構造体を使用する必要があるのはいつですか?

分類Dev

GL_RGB8の代わりにGL_SRGB8を使用する必要があるのはいつですか?

分類Dev

std :: thread :: spawnの代わりにstd :: thread :: Builderを使用する必要があるのはいつですか?

分類Dev

os.popenの代わりにsubprocess.Popenを使用する必要があるのはいつですか?

分類Dev

React状態変数の代わりにMobXobservableを使用する必要があるのはいつですか?

分類Dev

ドメインの代わりに列挙型を使用する必要があるのはいつですか?

分類Dev

Swift:「let」の代わりに「var」を使用する必要があるのはいつですか?

分類Dev

ReduxThunkの代わりにReduxSagaを使用する必要があるのはいつですか?また、ReduxSagaの代わりにReduxThunkを使用する必要があるのはいつですか?

分類Dev

Enumの代わりにEnumMetaをサブクラス化する必要があるのはいつですか?

分類Dev

Kotlinの演算子を使用する代わりに、プラス、マイナス、回の関数を使用する必要があるのはいつですか?

分類Dev

タスクを待つために、Async.AwaitTaskの代わりにAsync.AwaitIAsyncResultを使用する必要があるのはいつですか?

分類Dev

オブジェクトの代わりにタプルを使用する必要があるのはいつですか。その逆も同様です。

分類Dev

csvファイルを読み取るためにpandas.read_csvの代わりにnumpy.genfromtxtを使用する必要があるのはいつですか?

分類Dev

Kerasでは、input_dimの代わりにinput_shapeを使用する必要があるのはいつですか?

分類Dev

StringComparison.CurrentCultureの代わりにStringComparison.InvariantCultureを使用して文字列の同等性をテストする必要があるのはいつですか?

分類Dev

オブジェクトをラップする代わりにプリミティブを使用する必要があるのはいつですか?

分類Dev

getメソッドの代わりにRustVecへの直接アクセスを使用する必要があるのはいつですか?

Related 関連記事

  1. 1

    新しい例外の代わりにThrowableを使用する必要があるのはいつですか?

  2. 2

    boolの代わりにatomic <bool>を本当に使用する必要があるのはいつですか?

  3. 3

    UIButtonの代わりにanyObjectを迅速に使用する必要があるのはいつですか?

  4. 4

    AngularでrouterLinkの代わりにhrefを使用する必要があるのはいつですか?

  5. 5

    Z3で変数の代わりに関数を使用する必要があるのはいつですか?

  6. 6

    @Serviceの代わりに@Componentを使用する必要があるのはいつですか?

  7. 7

    JSONFieldの代わりにHStoreFieldを使用する必要があるのはいつですか?

  8. 8

    Forループの代わりにマップを使用する必要があるのはいつですか?

  9. 9

    クラスの代わりに構造体を使用する必要があるのはいつですか?

  10. 10

    Memcachedの代わりにMemcacheを使用する必要があるのはいつですか?

  11. 11

    クラスの代わりに構造体を使用する必要があるのはいつですか?

  12. 12

    10進数の代わりにdoubleを使用する必要があるのはいつですか?

  13. 13

    クラスの代わりに構造体を使用する必要があるのはいつですか?

  14. 14

    GL_RGB8の代わりにGL_SRGB8を使用する必要があるのはいつですか?

  15. 15

    std :: thread :: spawnの代わりにstd :: thread :: Builderを使用する必要があるのはいつですか?

  16. 16

    os.popenの代わりにsubprocess.Popenを使用する必要があるのはいつですか?

  17. 17

    React状態変数の代わりにMobXobservableを使用する必要があるのはいつですか?

  18. 18

    ドメインの代わりに列挙型を使用する必要があるのはいつですか?

  19. 19

    Swift:「let」の代わりに「var」を使用する必要があるのはいつですか?

  20. 20

    ReduxThunkの代わりにReduxSagaを使用する必要があるのはいつですか?また、ReduxSagaの代わりにReduxThunkを使用する必要があるのはいつですか?

  21. 21

    Enumの代わりにEnumMetaをサブクラス化する必要があるのはいつですか?

  22. 22

    Kotlinの演算子を使用する代わりに、プラス、マイナス、回の関数を使用する必要があるのはいつですか?

  23. 23

    タスクを待つために、Async.AwaitTaskの代わりにAsync.AwaitIAsyncResultを使用する必要があるのはいつですか?

  24. 24

    オブジェクトの代わりにタプルを使用する必要があるのはいつですか。その逆も同様です。

  25. 25

    csvファイルを読み取るためにpandas.read_csvの代わりにnumpy.genfromtxtを使用する必要があるのはいつですか?

  26. 26

    Kerasでは、input_dimの代わりにinput_shapeを使用する必要があるのはいつですか?

  27. 27

    StringComparison.CurrentCultureの代わりにStringComparison.InvariantCultureを使用して文字列の同等性をテストする必要があるのはいつですか?

  28. 28

    オブジェクトをラップする代わりにプリミティブを使用する必要があるのはいつですか?

  29. 29

    getメソッドの代わりにRustVecへの直接アクセスを使用する必要があるのはいつですか?

ホットタグ

アーカイブ