Cet article vous apporte des connaissances pertinentes sur python. Il présente principalement trois méthodes sur la façon d'utiliser la boucle for pour parcourir le dictionnaire Python. J'espère qu'il sera utile à tout le monde.
Apprentissage recommandé : Tutoriel vidéo Python
En Python, comment utiliser la boucle "for" pour parcourir un dictionnaire ?
Aujourd'hui, nous allons démontrer trois méthodes et apprendre à parcourir les dictionnaires imbriqués.
Avant le combat réel, nous devons créer un dictionnaire de données simulées.
dict_1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'}
Le moyen le plus simple de parcourir un dictionnaire en Python est de le mettre directement dans une boucle for.
Python traitera automatiquement dict_1
comme un dictionnaire et vous permettra de parcourir ses clés. Ensuite, nous pouvons utiliser l'opérateur d'index pour obtenir chaque valeur. dict_1
视为字典,并允许你迭代其key键。然后,我们就可以使用索引运算符,来获取每个value值。
for key in dict_1: print(key, ":", dict_1[key])
如果你想按照字母顺序排列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])
其实,遍历字典的最“pythonic”和优雅的方法,是使用.items()方法。
print(dict_1.items())
为了迭代transaction_data字典的键和值,您只需要“解包”嵌入在元组中的两个项目,如下所示:
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语句判断value值是不是字典,如果是,则使用前面提到的方法 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
rrreee
Si vous souhaitez disposer les clés dans Clé d'ordre alphabétique, vous pouvez utiliser la méthode sorted()
, l'utilisation spécifique est la suivante.
Méthode 2 : Utiliser .keys( ) + Itérer par index Utilisez la méthode .keys() pour renvoyer un objet Python contenant les clés du dictionnaire, et vous pouvez obtenir les mêmes résultats que la méthode 1. De même, il doit également être utilisé conjointement avec des opérateurs d’indexation.
rrreee🎜🎜🎜🎜Méthode 3 : utiliser .items( ) pour itérer🎜🎜🎜En fait, la manière la plus "pythonique" et la plus élégante de parcourir un dictionnaire est d'utiliser la méthode .items(). 🎜rrreee🎜🎜🎜Afin d'itérer les clés et les valeurs du dictionnaire transaction_data, il vous suffit de "décompresser" les deux éléments intégrés dans le tuple, comme ceci : 🎜rrreee🎜🎜🎜Notez quek
et v
ne sont que des alias standards pour "clé" et "valeur", mais vous pouvez également choisir une convention de dénomination différente. 🎜🎜Par exemple, nous pouvons le remplacer par a
et b
, et nous aurons le même résultat. 🎜rrreee🎜🎜🎜🎜Avancé : Traverser les dictionnaires imbriqués 🎜🎜 🎜Parfois, nous rencontrerons des dictionnaires plus complexes – des dictionnaires imbriqués. 🎜🎜Alors que devons-nous faire dans cette situation ? 🎜rrreee🎜🎜🎜Afin de démêler l'imbrication qui appartient to each Pour les paires clé-valeur du dictionnaire, nous pouvons faire ceci : 🎜rrreee🎜 Utilisez l'instruction if pour déterminer si la valeur est un dictionnaire. Si c'est le cas, utilisez la méthode 3 mentionnée précédemment et utilisez .items() pour. sortie itérative. 🎜🎜Les résultats en cours sont les suivants. 🎜🎜🎜🎜Si vous souhaitez uniquement décompresser une partie du dictionnaires, des conditions peuvent être ajoutées à l'instruction if. 🎜rrreee🎜Produisez uniquement le dictionnaire de num_2
Les résultats en cours d'exécution sont les suivants. 🎜🎜🎜🎜🎜Ce qui précède sont les conseils pour utiliser la boucle « for » pour parcourir le dictionnaire en Python. 🎜🎜Apprentissage recommandé : 🎜Tutoriel vidéo Python🎜🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!