python-dictionary

10 métodos útiles de diccionario de Python

Publicado por
Comparte en redes sociales


¿Quiere 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.

Comenzaremos revisando los conceptos básicos de los diccionarios de Python, luego crearemos un diccionario de muestra y lo modificaremos usando métodos de diccionario de Python.

Empecemos…

Una descripción general de los diccionarios de Python

Los diccionarios son estructuras de datos integradas en Python. Le permite almacenar elementos en pares clave-valor, definiendo una asociación o mapeo entre claves y valores.

Las claves de un diccionario deben ser únicas (para que sean hashable). Puede usar la clave para buscar el valor o usar métodos integrados (aprenderá sobre ellos pronto).

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: Para seguir los ejemplos de código, debe tener instalado Python 3.7 o posterior.

Puede codificar en un REPL de Python. O siga el editor Python en línea de Geekflare.

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

Ahora que hemos inicializado un diccionario de Python, revisemos los diferentes métodos de diccionario.

Obtener claves de diccionario con keys()

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'])

Obtener valores de diccionario con valores()

EL values() El método devuelve todos los valores y es útil cuando desea procesar más esos valores.

Accedemos a todos los valores de la person diccionario:

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

Obtenga pares clave-valor con elementos ()

EL items() El método devuelve una lista de tuplas clave-valor. 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()

python-dictionary-methods-1

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

>>> person_cpy = person.copy()

Aquí, person_cpy es una copia superficial de 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 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 encontrar 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.

Leer también  Cómo deshabilitar Copilot en Windows 11

EL setdefault(key) el método regresa 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 ‘dirección‘ clave no está presente en el person diccionario. Pero vemos que se añadió 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 una 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 de ‘país’ no está originalmente 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() El método devuelve el valor correspondiente a la clave. Esto también La mayoría de las veces es «posiblemente» 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’ porque la clave está presente en person:

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

EL person diccionario no tiene clave ‘gpa’. Entonces, cuando tratamos de obtener su valor, no obtenemos nada de 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, el 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'
}

Entendiendo setdefault() vs get()

Aunque ambos setdefault() Y get() se pueden usar métodos para manejar KeyError, resumamos las diferencias de lo que aprendimos:

  • dict.setdefault(key,val) añade el key con val como 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 Python. Si la key no está presente, vuelve val (si se proporciona) o None-pero no añada EL key en el diccionario.
Leer también  Next-Gen SaaS Solution for Web Hosting

También puede usar defaultdict en Python para manejar mejor KeyErrors.

Actualizar el contenido del diccionario con update()

Puede actualizar un diccionario de Python existente utilizando pares clave-valor de otro diccionario. También puede actualizar con el contenido de cualquier Python iterable usando el update() método.

Definamos un more_details diccionario. Luego actualizamos el person diccionario con el contenido de 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()

python-dictionary-methods-2

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

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

Como podemos ver, llame al popitem() El método del diccionario de personas devuelve el par clave-valor (‘me gusta’, ‘dulces’), el último elemento agregado al 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 el 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í un ejemplo :

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

Como hemos abierto el elemento correspondiente a la tecla ‘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 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 porque la clave ‘edad’ no está presente en el diccionario de personas.

A diferencia del lista pop() método que elimina el último elemento predeterminado, el diccionario pop() método necesita una llave. Si no especifica una clave en el método, encontraremos 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() elimine 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 podemos ver, llame al clear() método en el person diccionario elimina todos los pares clave-valor y el person el diccionario ahora está vacío.

Leer también  All You Need to Know

Resumen de los métodos del diccionario de Python

python-dictionary-methods-3

Aquí hay una descripción general rápida de los métodos del diccionario de Python que hemos aprendido.

Método Sintaxis Descripción
llaves() dict1.keys() Devuelve las llaves de dict1
valores() dict1.values() Devuelve los valores de dict1
elementos() dict1.items() Devuelve una lista de todos los pares clave-valor en dict1
Copiar() dict1.copy() Devuelve una copia superficial de dict1
definir por defecto() dict1.setdefault(key, default_value) – Agrega key con la opción default_value como la clave para dict1 (cuando no se especifica, el valor predeterminado es None)
– Comentario dict1[key] si la key ya está presente
obtener() dict1.get(key,default_value) – Comentario dict1[key] si la clave está presente en dict1; De lo contrario, devuelva el default_value
– Si key no está presente en dict1 Y default_value no se especifica, devuelve None
actualización() dict1.update(iterable1) Actualizaciones dict1 con pares clave-valor de iterable1
elemento pop() 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]
– Levantar un KeyError si la clave no está presente en dict1
claro() dict1.clear() Elimina todos los elementos de dict1

Conclusión

Aprendió a usar métodos comunes para realizar operaciones de lectura, actualización y eliminación en diccionarios de Python. Además, también aprendiste cómo el get() y el setdefault() Se pueden utilizar métodos para gestionar KeyError excepciones devolviendo un valor predeterminado y agregando una entrada con un valor predeterminado al diccionario de Python, respectivamente. También puede ordenar un diccionario de Python por clave o por valor.

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



Source link

Si quiere puede hacernos una donación por el trabajo que hacemos, lo apreciaremos mucho.

Direcciones de Billetera:

- BTC: 14xsuQRtT3Abek4zgDWZxJXs9VRdwxyPUS 

- USDT: TQmV9FyrcpeaZMro3M1yeEHnNjv7xKZDNe 

- BNB: 0x2fdb9034507b6d505d351a6f59d877040d0edb0f

- DOGE: D5SZesmFQGYVkE5trYYLF8hNPBgXgYcmrx 

También puede seguirnos en nuestras Redes sociales para mantenerse al tanto de los últimos post de la web:

-Twitter

- Telegram

Disclaimer: En Cryptoshitcompra.com no nos hacemos responsables de ninguna inversión de ningún visitante, nosotros simplemente damos información sobre Tokens, juegos NFT y criptomonedas, no recomendamos inversiones

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *