「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Python 辞書内の任意の要素に効率的にアクセスして削除するにはどうすればよいですか?

Python 辞書内の任意の要素に効率的にアクセスして削除するにはどうすればよいですか?

2024 年 11 月 17 日に公開
ブラウズ:853

How to Efficiently Access and Remove an Arbitrary Element in a Python Dictionary?

Python ディクショナリ内の任意の要素へのアクセス

Python では、ディクショナリはキーと値のペアを順序付けされていないコレクションに格納します。辞書が空でない場合は、次の構文を使用して任意の (ランダムな) 要素にアクセスできます:

mydict[list(mydict.keys())[0]]

ただし、これはこのアプローチは、特に複数の反復を実行する必要がある場合、冗長で非効率になる可能性があります。これを実現するためのより効率的な方法を検討してみましょう。

イテレータの使用 (Python 3)

イテレータは、オブジェクト内の任意の要素にアクセスするための非破壊的かつ反復的な方法を提供します。 Dictionary:

next(iter(mydict.values()))

itervalues() メソッドの使用 (Python 2)

Python 2 では、 itervalues() メソッドを使用して、辞書の反復子を取得できます。 value:

mydict.itervalues().next()

Six パッケージの使用 (Python 2 および 3 互換性)

Six パッケージが提供するものPython 2 と Python 2 間の互換性関数3:

six.next(six.itervalues(mydict))

任意の項目の削除

任意の項目を削除したい場合辞書では、popitem() メソッドを使用できます:

key, value = mydict.popitem()

注: 3.6 より前の Python バージョンでは、辞書は順序付けされていません。つまり、「最初の」要素が異なる実行間で同じであるとは保証されません。

リリースステートメント この記事は次の場所に転載されています: 1729245856 権利侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3