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

William Shakespeare
Release: 2022-04-25 21:00:14
forward
4220 people have browsed it

This article brings you relevant knowledge aboutpython. 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 treatdict_1as 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 thesorted()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 thatkandvare just standard aliases for "key" and "value", but you can also choose other naming conventions .

For example, we can replace it withaandb, 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 ofnum_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
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!