In Desarrollo Última actualizaciónated:
Comparte en:
Cloudways ofrece alojamiento en la nube administrado para empresas de cualquier tamaño para alojar un sitio web o aplicaciones web complejas.

¿Estás buscando aprender a trabajar con diccionarios de Python? Este tutorial cubrirá Métodos de diccionario de Python para leer, modificar y realizar otras operaciones comunes en los diccionarios de Python.

Empezaremos por revistando los conceptos básicos de los diccionarios Python y luego creándolosate un diccionario de ejemplo y modifíquelo usando métodos de diccionario de Python.

Empecemos…

Una descripción general de los diccionarios de Python

Diccionarios son estructuras de datos integradas en Python. Le permite almacenar elementos en pares clave-valor, definiendo una asociación o asignación entre las claves y los valores.

Las claves de un diccionario deben ser únicas (para que sean mezclable). Puede usar la clave para buscar el valor o usar métodos integrados (los aprenderá en breve).

Al crear un diccionario de Python, puede inicializar todos los pares clave-valor o inicializar un diccionario vacío y luego agregar los pares clave-valor.

>>> dict1 = {'language':'Python','like':True}
>>> type(dict1)
<class 'dict'>

# or we can do the following:

>>> dict1 = {}
>>> dict1['language']='Python'
>>> dict1['like']=True

Métodos de diccionario de Python para operaciones comunes

Nota: To follow along with the code examples, you need to have Python 3.7 or a later versión instalada.

You can code along in a Python REPL. Or follow along in Geekflare, editor de Python en línea.

>>> person = {'name':'Alice',
...           'city':'Portland',
...           'interest':'Programming',
...           'profession':'Developer'
...           }

Ahora que hemos inicializado un diccionario de Python, comencemos a repasar los diversos métodos de diccionario.

Obtenga las claves del diccionario con claves ()

Una de las operaciones comunes cuando se trabaja con un diccionario de Python es acceder a todas las claves, valores y pares clave-valor. Para obtener las claves de un diccionario, puede llamar al keys() método como se muestra:

>>> person.keys()
dict_keys(['name', 'city', 'interest', 'profession'])

Obtenga los valores del diccionario con valores()

El values() El método devuelve todos los valores y es útil cuando quieres process estos valores aún más.

Accedamos a todos los valores en el person diccionario:

>>> person.values()
dict_values(['Alice', 'Portland', 'Programming', 'Developer'])

Obtener pares clave-valor con artículos()

 El items() El método devuelve una lista de tuplas de valores-clave. Por lo tanto, llamar a este método en el person diccionario devuelve una lista de tuplas clave-valor:

>>> person.items()
dict_items([('name', 'Alice'), ('city', 'Portland'), ('interest', 'Programming'), 
           ('profession', 'Developer')])

Obtenga una copia superficial con copy()

El copy() el método devuelve un copia superficial de un diccionario Python.

>>> person_cpy = person.copy()

Aquí, person_cpy es una copia superficial del person diccionario. Modifiquemos esta copia actualizando la clave 'nombre' a 'Bob'.

>>> person_cpy['name'] = 'Bob'
>>> person_cpy

Ahora, si examina el contenido del diccionario, puede ver que el 'nombre' se ha actualizado.ated a 'Bob'.

{
 'name': 'Bob', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer'
}

Sin embargo, el original person el diccionario no ha sido modificado.

>>> person
{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer'
}

Establecer valores predeterminados con setdefault()

Cuando se trabaja con diccionarios de Python, es común encontrarse con KeyError excepción si la clave no está presente en el diccionario. Aquí hay un ejemplo cuando intentamos acceder a la tecla 'edad':

>>> person['age']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'age'

Puede evitar tales errores utilizando los métodos incorporados setdefault() y get() métodos en lugar de acceder al valor como se indicó anteriormente.

El setdefault(key) devuelve el método dict['key'] si la llave está presente en el dict.

>>> person.setdefault('name')
'Alice'

Cuando la clave no está presente, agrega la clave al diccionario con el valor predeterminado de None.

>>> person.setdefault('address')
>>> person

Aquí, la clave de 'dirección' no está presente en el person diccionario. Pero vemos que se ha añadido con el valor por defecto de None.

{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': None 
}

Ahora podemos establecer la tecla 'dirección' en alguna dirección:

>>> person['address'] = "10, xyz street"
>>> person
{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': '10, xyz street' 
}

También puede especificar el valor en la llamada al método, como se muestra:

>>> person.setdefault('country','USA')
'USA'
>>> person

Como la clave 'país' no es origenally Presente en el person diccionario, vemos que se ha añadido con 'USA' como valor.

{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': '10, xyz street', 
 'country': 'USA'
}

Obtenga un valor específico con get()

El get() método devuelve el valor correspondiente a la clave. También opciónally toma otro valor predeterminado que se devuelve si la clave es extraviado en el diccionario.

Cuando tratamos de acceder al valor de la clave 'nombre', obtenemos 'Alice' ya que la clave está presente en person:

>>> person.get('name')
'Alice'

El person diccionario no tiene una clave 'gpa'. Entonces, cuando tratamos de obtener su valor, no obtenemos nada en Python REPL. Sin embargo, si imprime el valor, obtendrá None.

>>> person.get('gpa')
>>> print(person.get('gpa'))
None

Pero si proporciona el valor predeterminado opcional, obtenemos ese valor en lugar de None.

>>> person.get('gpa','not found')
'not found'

Sin embargo, a pesar de la get() El método no agrega la clave 'gpa' al diccionario.

>>> person
{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': '10, xyz street', 
 'country': 'USA'
}

Comprender setdefault() frente a get()

Aunque tanto el setdefault() y get() se pueden usar métodos para manejar KeyError, resumamos las diferencias de lo que hemos aprendido:

  • dict.setdefault(key,val) agrega el key val como valor predeterminado. Si val no se proporciona, el key se suma con el valor por defecto de None.
  • dict.get(key,val) devuelve el valor correspondiente a la clave del diccionario de Python. Si el key no está presente, vuelve val (si se proporciona) o None-pero no agrega la key al diccionario.

También puedes usar tu préstamo estudiantildtic en Python para manejar mejor KeyErrors.

Actualizaciónate Contenidos del diccionario con update()

puedes actualizarate un diccionario Python existente que utiliza pares clave-valor de otro diccionario. También puedes actualizarate con contenidos de cualquier Python iterable usando el update() método.

Definamos un more_details diccionario. Luego actualizamosate la person diccionario con contenidos de la more_details diccionario:

>>> more_details = {'hobby':'singing', 'likes':'sweets'}
>>> person.update(more_details)

En el resultado a continuación, vemos que las teclas 'hobby' y 'me gusta' se han agregado a la person diccionario.

>>> person
{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': '10, xyz street', 
 'country': 'USA', 
 'hobby': 'singing', 
 'likes': 'sweets'
}

Eliminar el último elemento agregado con popitem()

El popitem() El método del diccionario se puede usar para eliminar el último par clave-valor agregado.

>>> person.popitem()
('likes', 'sweets')

Como se ve, llamando al popitem() en el diccionario de personas devuelve el par clave-valor ('me gusta', 'dulces'), el último elemento agregado en el diccionario.

También elimina el par clave-valor. Puede confirmar esto examinando el contenido del diccionario:

>>> person
{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': '10, xyz street', 
 'country': 'USA', 
 'hobby': 'singing'
}

Eliminar un elemento del diccionario con pop()

Sabemos que la popitem() El método del diccionario elimina y devuelve el último par clave-valor en un diccionario de Python. Sin embargo, a veces es posible que necesitemos eliminar otros elementos, además del último par clave-valor agregado.

Para hacer esto, podemos usar el método del diccionario de Python pop(): utilizando .pop(key) en el diccionario devuelve el valor correspondiente a la key y también elimina el par clave-valor del diccionario.

Aquí hay un ejemplo:

>>> person.pop('hobby')
'singing'

Cuando abrimos el elemento correspondiente a la clave 'hobby', vemos que ya no está presente en el diccionario.

>>> person
{
 'name': 'Alice', 
 'city': 'Portland', 
 'interest': 'Programming', 
 'profession': 'Developer', 
 'address': '10, xyz street', 
 'country': 'USA'
}

Si pasamos una clave que no existe, nos encontramos con KeyError excepción, como se muestra:

>>> person.pop('age')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'age'

Aquí nos topamos con un KeyError excepción ya que la clave 'edad' no está presente en el diccionario de personas.

A diferencia de la lista pop() Método que elimina el último elemento por defecto, el diccionario pop() Método requiere una llave. Si no especifica una clave en el método, nos encontraremos con errores.

>>> person.pop()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: pop expected at least 1 argument, got 0

Eliminar todos los elementos del diccionario con clear()

El diccionario pop() y popitem() Los métodos eliminan un par clave-valor a la vez. Si desea eliminar todos los elementos de un diccionario, puede utilizar el clear() método.

>>> person.clear()
>>> person
{}

Como se ve, llamando al clear() método en el person diccionario elimina todos los pares clave-valor y el person el diccionario ahora está vacío.

Resumen de los métodos del diccionario de Python

Aquí hay un rápido revVista de los métodos del diccionario de Python que hemos aprendido.

MétodoSintaxisDescripción
llaves()dict1.keys()Devuelve las llaves de dict1
valores ()dict1.values()Devuelve los valores de dict1
artículos()dict1.items()Devuelve una lista de todos los pares clave-valor en dict1
Copiar()dict1.copy()Devuelve una copia superficial de dict1
establecer predeterminado()dict1.setdefault(key, default_value)- Agrega key con el opcional default_value como la clave para dict1 (cuando no se especifica, el valor predeterminado es None)
- Devoluciones dict1[key] si el key ya está presente
get ()dict1.get(key,default_value)- Devoluciones dict1[key] si la clave está presente en dict1; De lo contrario, devuelve el default_value
- Si key no está presente en dict1 y default_value no se especifica, devuelve None
update()dict1.update(iterable1)Actualizaciones dict1 con pares clave-valor de iterable1
popitem ()dict1.popitem()Elimina y devuelve el último par clave-valor de dict1
popular()dict1.pop(key)– Elimina y devuelve el valor correspondiente a la key: dict1[key]
– Levanta un KeyError si la clave no está presente en dict1
claro()dict1.clear()Elimina todos los elementos de dict1

Para Concluir

Ha aprendido a utilizar métodos comunes para realizar lecturas, actualizaciones.atey eliminar operaciones en diccionarios de Python. Además, también aprendiste cómo get() y setdefault() Se pueden usar métodos para manejar KeyError excepciones devolviendo un valor predeterminado y agregando una entrada con un valor predeterminado al diccionario de Python, respectivamente. Tú también puedes ordenar un diccionario de Python por clave o por valor.

A continuación, consulte la lista de útiles Métodos de lista de Python. ¡Feliz codificación!

Comparte en:
  • Bala Priya C.
    Autor
    Bala Priya es un desarrollador y escritor técnico de India con más de tres años de experiencia en el espacio de redacción de contenido técnico. Comparte su aprendizaje con la comunidad de desarrolladores mediante la creación de tutoriales técnicos, guías prácticas y más...

Gracias a nuestros patrocinadores

Más lecturas interesantes sobre el desarrollo

Técnicas avanzadas de formato en Google Docs
Más allá de lo básico: técnicas avanzadas de formato en Google Docs

Google Docs hace un gran trabajo manteniendo las cosas simples. La configuración de página predeterminada funciona muy bien para la mayoría de los documentos y las opciones de formato comunes se encuentran directamente en la barra de herramientas. Sin embargo, cuando necesites realizar algún formateo avanzado, necesitarás profundizar un poco más.

Impulse su negocio

Algunas de las herramientas y servicios para ayudar a su negocio grow.
  • La herramienta de conversión de texto a voz que utiliza IA para generarate Voces realistas parecidas a las humanas.

    Intente Murf AI
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.

    Prueba Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno para ayudarlo a administrar proyectos, tareas, trabajo, ventas, CRM, operaciones, workflows, y más.

    Intente Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.

    Intente Intruder