Home  >  Article  >  Backend Development  >  Three methods to use For loop to traverse Python dictionary (detailed examples)

Three methods to use For loop to traverse Python dictionary (detailed examples)

WBOY
WBOYforward
2022-04-18 18:18:254132browse

This article brings you relevant knowledge about python. It mainly introduces three methods on how to use for loop to traverse Python dictionary. Let’s take a look at it together. I hope it will be helpful to everyone. help.

Three methods to use For loop to traverse Python dictionary (detailed examples)

Recommended learning: python video tutorial

In Python, how to use "for" loop to traverse a dictionary?

Today we will demonstrate three methods and learn to traverse nested dictionaries.

Before actual combat, we need to create a dictionary of simulated data.

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

Method 1: Iterate using For loop index

The easiest way to iterate over a dictionary in Python is to Put directly into the for loop.

Python will automatically treat dict_1 as a dictionary and allow you to iterate over its keys. Then, we can use the index operator to obtain each value.

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

If you want to arrange the keys in alphabetical order, you can use the sorted() method. The specific usage is as follows.

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

Method 2: Use .keys() index to iterate

Use .keys() to return a Python object containing dictionary keys, you can get Same result as method 1. Likewise, it also needs to be used in conjunction with indexing operators.

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

Method 3: Iterate using .items()

In fact, the most "pythonic" and elegant way to traverse a dictionary is The method is to use the .items() method.

print(dict_1.items())

In order to iterate over the keys and values ​​of the transaction_data dictionary, you only need to "unpack" the two items embedded in the tuple, like this:

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

Note that k and v are just standard aliases for "key" and "value", but you can also choose other naming conventions .

For example, we can replace it with a and b, and we will have the same output.

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

Advanced: Traversing nested dictionaries

Sometimes, we will encounter more complex dictionaries-nested dictionary.

So what should we do in this situation?

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

In order to unravel the key-value pairs belonging to each nested dictionary, we can do this:

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

Determine whether the value is through the if statement Dictionary, if so, use method 3 mentioned earlier, using .items() for iterative output.

The running results are as follows.

If you only want to decompress part of the dictionary, you can add conditions to the if statement.

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)

Only outputs the dictionary of num_2. The running results are as follows.

#The above are the tips for using “for” loop to traverse the dictionary in Python.

Recommended learning: python video tutorial

The above is the detailed content of Three methods to use For loop to traverse Python dictionary (detailed examples). For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:csdn.net. If there is any infringement, please contact admin@php.cn delete