Tutorial del diccionario de Python

T

Introducción

Python viene con una variedad de estructuras de datos integradas, capaces de almacenar diferentes tipos de datos. Un diccionario de Python es una estructura de datos que puede almacenar datos en forma de pares clave-valor. Se puede acceder a los valores en un diccionario de Python usando las claves. En este artículo, discutiremos el diccionario de Python en detalle.

Crear un diccionario

Para crear un diccionario de Python, necesitamos pasar una secuencia de elementos dentro de llaves {}y sepárelos con una coma (,). Cada elemento tiene una clave y un valor expresados ​​como un par “clave: valor”.

Los valores pueden pertenecer a cualquier tipo de datos y pueden repetirse, pero las claves deben permanecer únicas.

Los siguientes ejemplos demuestran cómo crear diccionarios de Python:

Creando un diccionario vacío:

dict_sample = {}

Creando un diccionario con claves enteras:

dict_sample = {1: 'mango', 2: 'pawpaw'}

Crear un diccionario con claves mixtas:

dict_sample = {'fruit': 'mango', 1: [4, 6, 8]}

También podemos crear un diccionario llamando explícitamente a Python dict() método:

dict_sample = dict({1:'mango', 2:'pawpaw'})

También se puede crear un diccionario a partir de una secuencia como se muestra a continuación:

dict_sample = dict([(1,'mango'), (2,'pawpaw')])

Los diccionarios también se pueden anidar, lo que significa que podemos crear un diccionario dentro de otro diccionario. Por ejemplo:

dict_sample = {1: {'student1' : 'Nicholas', 'student2' : 'John', 'student3' : 'Mercy'},
        2: {'course1' : 'Computer Science', 'course2' : 'Mathematics', 'course3' : 'Accounting'}}

Para imprimir el contenido del diccionario, podemos usar Python print() función y pasar el nombre del diccionario como argumento de la función. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
print(dict_sample)

Salida:

{'Company': 'Toyota', 'model': 'Premio', 'year': 2012}

Acceso a elementos

Para acceder a los elementos del diccionario, pase la clave entre corchetes []. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
x = dict_sample["model"]
print(x)

Salida:

Premio

Creamos un diccionario llamado dict_sample. Una variable llamada x luego se creó y su valor se establece como el valor de la clave “modelo” en el diccionario.

Aquí hay otro ejemplo:

dict = {'Name': 'Mercy', 'Age': 23, 'Course': 'Accounting'}
print("Student Name:", dict['Name'])
print("Course:", dict['Course'])
print("Age:", dict['Age'])

Salida:

Student Name: Mercy
Course: Accounting
Age: 23

El objeto de diccionario también proporciona get() función, que también se puede utilizar para acceder a los elementos del diccionario. Agregamos la función con el nombre del diccionario usando el operador de punto y luego pasamos el nombre de la clave como argumento de la función. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
x = dict_sample.get("model")
print(x)

Salida:

Premio

Ahora sabemos cómo acceder a los elementos del diccionario utilizando algunos métodos diferentes. En la siguiente sección discutiremos cómo agregar nuevos elementos a un diccionario ya existente.

Agregar elementos

Existen numerosas formas de agregar nuevos elementos a un diccionario. Podemos usar una nueva clave de índice y asignarle un valor. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
dict_sample["Capacity"] = "1800CC"
print(dict_sample)

Salida:

{'Capacity': '1800CC', 'year': 2012, 'Company': 'Toyota', 'model': 'Premio'}

El nuevo elemento tiene “Capacidad” como clave y “1800CC” como su valor correspondiente. Se ha añadido como primer elemento del diccionario.

He aquí otro ejemplo. Primero, creemos primero un diccionario vacío:

MyDictionary = {}
print("An Empty Dictionary: ")
print(MyDictionary)

Salida:

An Empty Dictionary:

El diccionario no devuelve nada porque todavía no tiene nada almacenado. Agreguemos algunos elementos, uno a la vez:

MyDictionary[0] = 'Apples'
MyDictionary[2] = 'Mangoes'
MyDictionary[3] = 20
print("n3 elements have been added: ")
print(MyDictionary)

Salida:

3 elements have been added:
{0: 'Apples', 2: 'Mangoes', 3: 20}

Para agregar los elementos, especificamos claves así como los valores correspondientes. Por ejemplo:

MyDictionary[0] = 'Apples'

En el ejemplo anterior, 0 es la clave mientras que “Manzanas” es el valor.

Incluso es posible que agreguemos un conjunto de valores a una clave. Por ejemplo:

MyDictionary['Values'] = 1, "Pairs", 4
print("n3 elements have been added: ")
print(MyDictionary)

Salida:

3 elements have been added:
{'Values': (1, 'Pairs', 4)}

En el ejemplo anterior, el nombre de la clave es “Valores” mientras que todo lo que sigue a = signo son los valores reales para esa clave, almacenados como un Conjunto.

Además de agregar nuevos elementos a un diccionario, los elementos del diccionario también se pueden actualizar / cambiar, lo que veremos en la siguiente sección.

Actualización de elementos

Después de agregar un valor a un diccionario, podemos modificar el elemento de diccionario existente. Utiliza la clave del elemento para cambiar el valor correspondiente. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

dict_sample["year"] = 2014

print(dict_sample)

Salida:

{'year': 2014, 'model': 'Premio', 'Company': 'Toyota'}

En este ejemplo, puede ver que hemos actualizado el valor de la clave “año” del valor anterior de 2012 a un nuevo valor de 2014.

Eliminar elementos

La eliminación de un elemento de un diccionario se puede realizar de varias formas, que analizaremos una por una en esta sección:

los del La palabra clave se puede utilizar para eliminar el elemento con la clave especificada. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
del dict_sample["year"]
print(dict_sample)

Salida:

{'Company': 'Toyota', 'model': 'Premio'}

Llamamos al del palabra clave seguida del nombre del diccionario. Dentro de los corchetes que siguen al nombre del diccionario, pasamos la clave del elemento que necesitamos eliminar del diccionario, que en este ejemplo era “año”. Luego se eliminó la entrada para “año” en el diccionario.

Otra forma de eliminar un par clave-valor es usar el pop() función y pase la clave de la entrada que se eliminará como argumento de la función. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
dict_sample.pop("year")
print(dict_sample)

Salida:

{'Company': 'Toyota', 'model': 'Premio'}

Invocamos al pop() función añadiéndola con el nombre del diccionario. Nuevamente, en este ejemplo se eliminará la entrada para “año” en el diccionario.

los popitem() La función elimina el último elemento insertado en el diccionario, sin necesidad de especificar la clave. Eche un vistazo al siguiente ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
dict_sample.popitem()
print(dict_sample)

Salida:

{'Company': 'Toyota', 'model': 'Premio'}

La última entrada en el diccionario fue “año”. Se ha eliminado después de llamar al popitem() función.

Pero, ¿qué pasa si desea eliminar todo el diccionario? Sería difícil y engorroso utilizar uno de estos métodos en cada tecla. En su lugar, puede utilizar el del palabra clave para eliminar todo el diccionario. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
del dict_sample
print(dict_sample)

Salida:

NameError: name 'dict_sample' is not defined

El código devuelve un error. La razón es que estamos intentando acceder a un diccionario que no existe porque ha sido eliminado.

Sin embargo, su caso de uso puede requerir que elimine todos los elementos del diccionario y se quede con un diccionario vacío. Esto se puede lograr llamando al clear() función en el diccionario:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
dict_sample.clear()
print(dict_sample)

Salida:

{}

El código devuelve un diccionario vacío ya que se han eliminado todos los elementos del diccionario.

Otros métodos comunes

El método len ()

Con este método, puede contar la cantidad de elementos en un diccionario. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
print(len(dict_sample))

Salida:

3

Hay tres entradas en el diccionario, por lo que el método devolvió 3.

El método copy ()

Este método devuelve una copia del diccionario existente. Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}
x = dict_sample.copy()

print(x)

Salida:

{'Company': 'Toyota', 'year': 2012, 'model': 'Premio'}

Creamos una copia del diccionario llamada dict_sample y lo asignó a la variable x. Si x está impreso en la consola, verá que contiene los mismos elementos que los almacenados por dict_sample diccionario.

Tenga en cuenta que esto es útil porque las modificaciones realizadas en el diccionario copiado no afectarán al original.

El método items ()

Cuando se llama, este método devuelve un objeto iterable. El objeto iterable tiene pares clave-valor para el diccionario, como tuplas en una lista. Este método se usa principalmente cuando desea iterar a través de un diccionario.

El método simplemente se llama en el nombre del objeto del diccionario como se muestra a continuación:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

for k, v in dict_sample.items():
  print(k, v)

Salida:

('Company', 'Toyota')
('model', 'Premio')
('year', 2012)

El objeto devuelto por items() también se puede utilizar para mostrar los cambios que se han implementado en el diccionario. Esto se demuestra a continuación:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

x = dict_sample.items()

print(x)

dict_sample["model"] = "Mark X"

print(x)

Salida:

dict_items([('Company', 'Toyota'), ('model', 'Premio'), ('year', 2012)])
dict_items([('Company', 'Toyota'), ('model', 'Mark X'), ('year', 2012)])

El resultado muestra que cuando cambia un valor en el diccionario, el objeto de elementos también se actualiza para reflejar este cambio.

El método fromkeys ()

Este método devuelve un diccionario con claves y valores especificados. Toma la sintaxis que se indica a continuación:

dictionary.fromkeys(keys, value)

El valor de requerido keys El parámetro es iterable y especifica las claves para el nuevo diccionario. El valor de value El parámetro es opcional y especifica el valor predeterminado para todas las claves. El valor predeterminado para esto es None.

Supongamos que necesitamos crear un diccionario de tres claves, todas con el mismo valor. Podemos hacerlo de la siguiente manera:

name = ('John', 'Nicholas', 'Mercy')
age = 25

dict_sample = dict.fromkeys(name, age)


print(dict_sample)

Salida:

{'John': 25, 'Mercy': 25, 'Nicholas': 25}

En el script anterior, especificamos las claves y un valor. los fromkeys() El método pudo elegir las claves y combinarlas con este valor para crear un diccionario poblado.

El valor de la keys El parámetro es obligatorio. El siguiente ejemplo demuestra lo que sucede cuando el valor de la values el parámetro no está especificado:

name = ('John', 'Nicholas', 'Mercy')

dict_sample = dict.fromkeys(name)


print(dict_sample)

Salida:

{'John': None, 'Mercy': None, 'Nicholas': None}

El valor predeterminado, que es None, se utilizó.

El método setdefault ()

Este método es aplicable cuando necesitamos obtener el valor del elemento con la clave especificada. Si no se encuentra la clave, se insertará en el diccionario junto con el valor especificado.

El método tiene la siguiente sintaxis:

dictionary.setdefault(keyname, value)

En esta función el keyname se requiere el parámetro. Representa el nombre clave del elemento del que necesita devolver un valor. los value el parámetro es opcional. Si el diccionario ya tiene la clave, este parámetro no tendrá ningún efecto. Si la clave no existe, el valor dado en esta función se convertirá en el valor de la clave. Tiene un valor predeterminado de None.

Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

x = dict_sample.setdefault("color", "Gray")

print(x)

Salida

Gray

El diccionario no tiene la clave para color. los setdefault() ha insertado esta clave y el valor especificado, es decir, “Gris”, se ha utilizado como su valor.

El siguiente ejemplo demuestra cómo se comporta el método si el valor de la clave existe:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

x = dict_sample.setdefault("model", "Allion")

print(x)

Salida:

Premio

El valor “Allion” no tiene ningún efecto en el diccionario puesto que ya tenemos un valor para la clave.

El método keys ()

Este método también devuelve un objeto iterable. El objeto devuelto es una lista de todas las claves del diccionario. Y al igual que con el items() , el objeto devuelto se puede utilizar para reflejar los cambios realizados en el diccionario.

Para usar este método, solo lo llamamos por el nombre del diccionario, como se muestra a continuación:

dictionary.keys()

Por ejemplo:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

x = dict_sample.keys()

print(x)

Salida:

dict_keys(['model', 'Company', 'year'])

A menudo, este método se usa para iterar a través de cada clave en su diccionario, así:

dict_sample = {
  "Company": "Toyota",
  "model": "Premio",
  "year": 2012
}

for k in dict_sample.keys():
  print(k)

Salida:

Company
model
year

Conclusión

Esto marca el final de este tutorial sobre diccionarios de Python. Estos diccionarios almacenan datos en pares “clave: valor”. La “clave” actúa como identificador del artículo, mientras que “valor” es el valor del artículo. El diccionario de Python viene con una variedad de funciones que se pueden aplicar para la recuperación o manipulación de datos. En este artículo, vimos cómo se puede crear, modificar y eliminar el diccionario de Python junto con algunos de los métodos de diccionario más utilizados.

 

About the author

Ramiro de la Vega

Bienvenido a Pharos.sh

Soy Ramiro de la Vega, Estadounidense con raíces Españolas. Empecé a programar hace casi 20 años cuando era muy jovencito.

Espero que en mi web encuentres la inspiración y ayuda que necesitas para adentrarte en el fantástico mundo de la programación y conseguir tus objetivos por difíciles que sean.

Add comment

Sobre mi

Últimos Post

Etiquetas

Esta web utiliza cookies propias para su correcto funcionamiento. Al hacer clic en el botón Aceptar, aceptas el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad