この記事では、python に関する関連知識を提供します。主に for ループを使用して Python 辞書を参照する方法について 3 つの方法を紹介します。一緒に見てみましょう。皆さんのお役に立てれば幸いです。 。 ヘルプ。
推奨学習: python ビデオ チュートリアル
Python で、「for」ループを使用して辞書を調べる方法は何ですか?
今日は 3 つの方法を示し、ネストされた辞書を走査する方法を学びます。
実際の戦闘の前に、シミュレートされたデータの辞書を作成する必要があります。
dict_1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'}
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])
.keys() を使用して、辞書キーを含む Python オブジェクトを返します。方法 1 と同じ結果。同様に、インデックス演算子と組み合わせて使用する必要もあります。
for key in dict_1.keys(): print(key, '-->', dict_1[key])
実際、これは最も「Python 的」でエレガントなトラバース方法です。辞書は .items() メソッドを使用します。
print(dict_1.items())
transaction_data ディクショナリのキーと値を反復処理するには、次のようにタプルに埋め込まれた 2 つの項目を「解凍」するだけです。
for k,v in dict_1.items(): print(k,">>",v)
k
と v
は「キー」と「値」の標準のエイリアスにすぎませんが、次のこともできることに注意してください。他の命名規則を選択してください。
たとえば、これを a
と b
に置き換えると、同じ出力が得られます。
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 サイトの他の関連記事を参照してください。