Diccionari de Python (dict) per al processament de bucles: claus (), valors (), elements ()

Negocis

Per recórrer els elements d’un objecte de diccionari de Python amb una instrucció for, utilitzeu el mètode següent a l’objecte de diccionari, que també es pot combinar amb list() per obtenir una llista de totes les claus i valors del diccionari.

  • keys():Per al processament de bucle per a cada clau d’element
  • values():Per al processament de bucle per a cada valor d’element
  • items():Per al processament de bucle per a la clau i el valor de cada element

El següent objecte de diccionari és un exemple.

d = {'key1': 1, 'key2': 2, 'key3': 3}

Les claus es poden obtenir girant l’objecte del diccionari en una instrucció for tal com és.

for k in d:
    print(k)
# key1
# key2
# key3

keys():Per al processament de bucle per a cada clau d’element

Com s’ha esmentat anteriorment, les claus es poden obtenir girant l’objecte diccionari tal com es troba en una instrucció for, però també es pot utilitzar el mètode keys().

for k in d.keys():
    print(k)
# key1
# key2
# key3

El mètode keys() retorna la classe dict_keys. Si voleu fer una llista, podeu utilitzar la funció list().

keys = d.keys()
print(keys)
print(type(keys))
# dict_keys(['key1', 'key2', 'key3'])
# <class 'dict_keys'>

k_list = list(d.keys())
print(k_list)
print(type(k_list))
# ['key1', 'key2', 'key3']
# <class 'list'>

DICT_KEYS és capaç de realitzar operacions establertes.

values():Per al processament de bucle per a cada valor d’element

Si voleu realitzar un processament for-loop per a cada valor d’element, utilitzeu el mètode values().

for v in d.values():
    print(v)
# 1
# 2
# 3

El mètode values() retorna la classe dict_values. Si voleu fer una llista, podeu utilitzar la funció list().

values = d.values()
print(values)
print(type(values))
# dict_values([1, 2, 3])
# <class 'dict_values'>

v_list = list(d.values())
print(v_list)
print(type(v_list))
# [1, 2, 3]
# <class 'list'>

Com que els valors es poden solapar, no s’admet l’operació establerta de dict_values.

items():Per al processament de bucle per a la clau i el valor de cada element

Si voleu realitzar un procés de bucle for tant per a la clau com per al valor de cada element, utilitzeu el mètode items().

for k, v in d.items():
    print(k, v)
# key1 1
# key2 2
# key3 3

(key, value)Així, es pot rebre com una tupla.

for t in d.items():
    print(t)
    print(type(t))
    print(t[0])
    print(t[1])
    print('---')
# ('key1', 1)
# <class 'tuple'>
# key1
# 1
# ---
# ('key2', 2)
# <class 'tuple'>
# key2
# 2
# ---
# ('key3', 3)
# <class 'tuple'>
# key3
# 3
# ---

El mètode items() retorna la classe dict_items. Si voleu fer una llista, podeu utilitzar la funció list(). Cada element és una tupla.
(key, value)

items = d.items()
print(items)
print(type(items))
# dict_items([('key1', 1), ('key2', 2), ('key3', 3)])
# <class 'dict_items'>

i_list = list(d.items())
print(i_list)
print(type(i_list))
# [('key1', 1), ('key2', 2), ('key3', 3)]
# <class 'list'>

print(i_list[0])
print(type(i_list[0]))
# ('key1', 1)
# <class 'tuple'>

DICT_ITEMS també pot realitzar operacions establertes.

Copied title and URL