ホームページ  >  記事  >  バックエンド開発  >  For ループを使用して Python 辞書を走査する 3 つの方法 (詳細な例)

For ループを使用して Python 辞書を走査する 3 つの方法 (詳細な例)

WBOY
WBOY転載
2022-04-18 18:18:254306ブラウズ

この記事では、python に関する関連知識を提供します。主に for ループを使用して Python 辞書を参照する方法について 3 つの方法を紹介します。一緒に見てみましょう。皆さんのお役に立てれば幸いです。 。 ヘルプ。

For ループを使用して Python 辞書を走査する 3 つの方法 (詳細な例)

推奨学習: python ビデオ チュートリアル

Python で、「for」ループを使用して辞書を調べる方法は何ですか?

今日は 3 つの方法を示し、ネストされた辞書を走査する方法を学びます。

実際の戦闘の前に、シミュレートされたデータの辞書を作成する必要があります。

dict_1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'}

方法 1: For ループ インデックスを使用して反復する

Python で辞書を反復する最も簡単な方法は、直接 Put することです。 for ループに入れます。

Python は自動的に dict_1 を辞書として扱い、そのキーを反復処理できるようにします。次に、インデックス演算子を使用して各値を取得します。

for key in dict_1:
    print(key, ":", dict_1[key])

キーをアルファベット順に並べたい場合は、sorted() メソッドを使用します。具体的な使用方法は次のとおりです。

for key in sorted(dict_1):
    print(key, ":", dict_1[key])

方法 2: .keys() インデックスを使用して反復します

.keys() を使用して、辞書キーを含む Python オブジェクトを返します。方法 1 と同じ結果。同様に、インデックス演算子と組み合わせて使用​​する必要もあります。

for key in dict_1.keys():
    print(key, '-->', dict_1[key])

方法 3: .items() を使用して反復する

実際、これは最も「Python 的」でエレガントなトラバース方法です。辞書は .items() メソッドを使用します。

print(dict_1.items())

transaction_data ディクショナリのキーと値を反復処理するには、次のようにタプルに埋め込まれた 2 つの項目を「解凍」するだけです。

for k,v in dict_1.items():
    print(k,">>",v)

kv は「キー」と「値」の標準のエイリアスにすぎませんが、次のこともできることに注意してください。他の命名規則を選択してください。

たとえば、これを ab に置き換えると、同じ出力が得られます。

for a,b in dict_1.items():
    print(a,"-",b)

上級: ネストされた辞書の探索

場合によっては、より複雑な辞書がネストされた辞書に遭遇することがあります。

それでは、この状況では何をすべきでしょうか?

dict_2 = {"num_1":{'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'},
          "num_2":{'Name': 'BOb', 'Age': 32, 'Class': 'Six','Address':'Shanghai'},
          "num_3":{'Name': 'Tom', 'Age': 25, 'Class': 'Second','Address':'Wuhan'}}dict_2

各ネストされたディクショナリに属する​​キーと値のペアを解明するには、次のようにします。

for k, v in dict_2.items():
    if type(v) is dict:
        for nk, nv in v.items():
            print(nk, "→", nv)

値の値が通過しているかどうかを判断します。 if ステートメント ディクショナリにある場合は、前述の方法 3 を使用し、反復出力に .items() を使用します。

実行結果は以下の通りです。

辞書の一部だけを解凍したい場合は、if ステートメントに条件を追加できます。

for k, v in dict_2.items():
    if type(v) is dict and k == 'num_2':
        for sk, sv in v.items():
            print(sk, "-->", sv)

num_2の辞書のみ出力します。実行結果は以下の通りです。

#上記は、「for」ループを使用して Python で辞書を走査するためのヒントです。

推奨学習: Python ビデオ チュートリアル

以上がFor ループを使用して Python 辞書を走査する 3 つの方法 (詳細な例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。