Cómo iterar a través de un diccionario en Python (claves, valores y elementos)

Aprenda a realizar un bucle o iterar en un diccionario de Python. Descubra métodos para recorrer claves, valores y pares clave-valor con ejemplos limpios y ejecutables.

Pruebe esta solución en el Editor

Descripción general

Iterar sobre diccionarios es una tarea fundamental en la programación de Python, ya que los diccionarios se usan ampliamente para almacenar datos clave-valor, como registros de bases de datos, cargas útiles de API y ajustes de configuración. Python proporciona varios métodos integrados e intuitivos para recorrer diccionarios dependiendo de si necesita las claves, los valores o ambos. Comprender estos métodos es crucial para escribir código limpio, eficiente y legible.

La forma más común de iterar a través de claves y valores simultáneamente es mediante el método `.items()`. Este método devuelve un objeto de vista que contiene tuplas de pares clave-valor, que se pueden descomprimir fácilmente directamente dentro de una instrucción de bucle "for". Generalmente se prefiere esto a iterar a través de claves y buscar valores manualmente, ya que es más legible y más eficiente.

Si solo necesita claves, puede recorrer directamente el diccionario o usar el método `.keys()` explícitamente. Para iterar solo sobre los valores, Python proporciona el método `.values()`. Ambos objetos de vista son dinámicos, reflejan cualquier cambio realizado en el diccionario y admiten pruebas de membresía mediante el operador "in".

Código y salida de ejecución

Este código demuestra la iteración sobre claves, valores y pares clave-valor de un diccionario.

iterate_dict.py
Pruébelo en el editor
user = {"username": "alice", "role": "admin", "active": "True"}

# 1. Iterate over keys and values using items()
print("--- Keys and Values ---")
for key, value in user.items():
    print(f"{key}: {value}")

# 2. Iterate over keys only (default behavior)
print("\n--- Keys Only ---")
for key in user:
    print("Key:", key)

# 3. Iterate over values only
print("\n--- Values Only ---")
for val in user.values():
    print("Value:", val)
Salida terminal
--- Keys and Values ---
username: alice
role: admin
active: True

--- Keys Only ---
Key: username
Key: role
Key: active

--- Values Only ---
Value: alice
Value: admin
Value: True

Implementación paso a paso

  • Utilice user.items() en un bucle for para extraer y descomprimir claves y valores simultáneamente.
  • Recorra directamente el diccionario (o llame a .keys()) para recorrer las claves únicamente.
  • Utilice .values() para aislar e iterar a través de los valores del diccionario.

Preguntas frecuentes

¿Se conserva el orden de inserción al iterar sobre un diccionario?

Sí, a partir dePython 3.7+, se garantiza que los diccionarios mantendrán el orden de inserción de las claves.

¿Puedes modificar un diccionario mientras lo iteras?

No, modificar claves (agregar o eliminar) durante la iteración generará un RuntimeError. En su lugar, modifique una copia de claves o valores.

Temas relacionados

Recursos recomendados de Python

Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.