Home > Backend Development > Python Tutorial > 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
Release: 2022-04-25 21:00:14
forward
4379 people have browsed it

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'}
Copy after login

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])
Copy after login

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])
Copy after login

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])
Copy after login

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())
Copy after login

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)
Copy after login

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)
Copy after login

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
Copy after login

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)
Copy after login

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)
Copy after login

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!

Related labels:
source:csdn.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template