ホームページ  >  記事  >  バックエンド開発  >  Python 辞書内の任意の要素に効率的にアクセスして削除するにはどうすればよいですか?

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

Barbara Streisand
Barbara Streisandオリジナル
2024-10-18 18:05:29978ブラウズ

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

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

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

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

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

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

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

next(iter(mydict.values()))

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

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

mydict.itervalues().next()

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

six パッケージは、Python 2 と 3 の間の互換性機能を提供します:

six.next(six.itervalues(mydict))

任意の項目の削除

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

key, value = mydict.popitem()

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

以上がPython 辞書内の任意の要素に効率的にアクセスして削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。