En el vasto universo de la programación, los diccionarios se destacan como estructuras de datos potentes y versátiles. Similar a un diccionario tradicional, en un diccionario de programación, las palabras actúan como "llaves" y las definiciones como "valores". Explorar este concepto en Python, uno de los lenguajes de programación más populares, ofrece a los programadores una herramienta esencial para gestionar y organizar datos de manera eficiente.
¿Cómo se define y utiliza un diccionario en Python?
Definir un diccionario en Python es un proceso simple y directo. Puedes crear un diccionario usando llaves {} y asignando pares llave-valor. Imaginemos que deseamos almacenar información sobre una persona:
# Definición de un diccionario en PythonmyDic ={"nombre":"Nicolás","apellido":"Molena Monroy","edad":87}
Este ejemplo ilustra cómo un diccionario almacena atributos como el nombre, apellido y edad de una persona, con cada atributo emparejado con su respectivo valor. Ahora, exploremos cómo manejar dicha información.
¿Cómo acceder a los valores de un diccionario?
Acceder a los elementos de un diccionario es una de sus funcionalidades más eficaces:
Para acceder mediante una llave específica, puedes hacerlo directamente:
# Acceso directo al valor usando la llaveedad = myDic["edad"]
Sin embargo, si no estás seguro de que la llave existe, usar el método .get() es más seguro:
# Uso del método get para prevenir erroresapellido = myDic.get("apellido")
El uso de get es ventajoso ya que previene errores al devolver None si la llave no está presente, en lugar de interrumpir el programa.
¿Cómo verificar la existencia de una llave?
Para saber si una llave específica está presente en el diccionario, podemos usar el operador in:
# Verificación de la existencia de una llaveexiste ="nombre"in myDic # Devuelve Trueno_existe ="altura"in myDic # Devuelve False
Esta técnica permite manejar condiciones antes de acceder a un valor potencialmente inexistente, mejorando la robustez de tu código.
Maneras de manipular diccionarios en Python
Los diccionarios no solo son útiles para almacenar datos. También proporcionan funciones para contar elementos, y aquí es donde entra en juego el método .len(). Esto te brinda el número de pares llave-valor presentes:
# Determinando la longitud del diccionarioelementos_totales =len(myDic)# Devuelve 3
Además, la flexibilidad de los diccionarios en Python permite agregar, actualizar y eliminar elementos, funcionalidades que se detallan extensamente en documentación y próximas lecciones.
Consejos prácticos para el uso de diccionarios
Seguridad ante errores con .get(): Utiliza get cuando no estés seguro de que una llave existe. Esto previene potenciales errores y detenciones del programa.
Verificación con in: Aprovecha la comprobación de existencia de llaves antes de acceder a valores en el diccionario.
Comprensión eficaz: Almacena solo datos necesarios y consulta claves previamente definidas para sacar el máximo provecho de esta estructura de datos.
Aprender a utilizar diccionarios de manera eficaz mejora significativamente la forma en que gestionas la información en tus proyectos de programación. Su aplicabilidad abarca desde proyectos simples hasta aplicaciones complejas, siendo una capacidad indispensable para cualquier aspirante a desarrollador. ¡Sigue practicando y explorando nuevas funcionalidades de Python para abrir más puertas en tu camino educativo!
Creo que la lista es algo distinto al arreglo, no se como funciona en JS, pero en su definición, un arreglo tiene una dimensión fija, mientras que la lista es dinámica. :)
El siguiente paso a las listas y tuplas que vimos en anteriores, son los diccionarios. Y un diccionario en Python, es como un diccionario en la vida del día a día.
Es decir, cada palabra tiene asociado un significado.
Pues exactamente igual tenemos en Python, cada palabra, que llamaremos clave, tiene asociado un significado, que llamaremos valor. Es decir, que un diccionario no es mas que un conjunto de parejas clave – valor. Los diccionarios en Python son un tipo de dato realmente muy potente.
Indicar que si bien en el caso de un diccionario al uso, la clave (palabra que buscamos), siempre es una cadena de texto, en Python, la clave puede ser cualquier tipo de dato, un entero, una cadena de texto.
Incluso, es posible que el tipo de dato varíe, es decir, que para un elemento sea de un tipo y para otro elemento del diccionario, sea de otro tipo.
#aprederemos sobre la estructura de los diccionarios, encontraremos una palabra y por ende su definición ==> en Python sería una llave(key), y su definición
#los diccionarios siempre se definen entre llaves
my_dic ={'persona,niño'}print(my_dic)print(type(my_dic))my_dic ={'persona':'niño','nombre':'nicolas','genero':'masculino','edad':'12 años'#aca estamos definiendo los datos de diccionario
}print(my_dic)print(len(my_dic))#con len podemos saber cuántos elementos tenemos en el dic
#tambien puedo leer ese diccionario con los métodos
print(my_dic['persona'])print(my_dic['nombre'])print(my_dic['genero'])print(my_dic['edad'])#tambien hay otra forma de hacer que es con el método getprint(my_dic.get('persona'))print(my_dic.get('nombre'))print(my_dic.get('genero'))print(my_dic.get('edad'))print(my_dic.get('juan jose'))#la diferencia con get es que imprímelos datos que no hay nada definido(none)#es recomendable siempre trabajar con get, porque si no existe el diccionario no dará un error solo pondrá None#tambien podemos verificar si una llave no existe ni(IN), que nos arrojara valores bulenos
print('persona'in my_dic)print('apellidos'in my_dic)#en esta clase vimos los primeros acercamientos a los diccionarios
gracias
#Los diccionarios se compones de llave, valor.# muy similares a un archivo .jsonmy_dict ={'avion':'objeto volador','name':'Javier','last_name':'Sepulveda','age':109}print(my_dict)
#el tamanio del diccionario
print(len(my_dict))
#imprimiendo una llave
print(my_dict['age'])#La funcion get, si no existe el valor sale un mensaje none(Maneja el error)# Se cambian los corchetes por parentesis(), ya que get es una funcion de python
print(my_dict.get('test'))print('name'in my_dict)print('other'in my_dict)
A los diccionarios en python los conocemos como “objetos” en otros lenguajes de programación, a continuación una lista de sus características más destacables:
Los diccionarios son colecciones de pares clave-valor.
Las claves son únicas e inmutables (generalmente cadenas o números).
Los valores pueden ser de cualquier tipo (enteros, cadenas, listas, tuplas, otros diccionarios, etc.).
Los diccionarios se definen utilizando llaves {}.
Los pares clave-valor se separan por comas.
Puedes acceder a los valores mediante la clave utilizando la notación de corchetes [].
Puedes modificar, agregar o eliminar elementos de un diccionario.
La función len(diccionario) devuelve el número de elementos en el diccionario.
Los diccionarios no tienen un orden específico, es decir, no se puede acceder a sus elementos por índice.
Puedes iterar sobre un diccionario utilizando bucles for.
El método dict() se utiliza para crear un diccionario vacío.
El método keys() devuelve una lista de todas las claves del diccionario.
El método values() devuelve una lista de todos los valores del diccionario.
El método items() devuelve una lista de tuplas (clave, valor) que representan todos los elementos del diccionario.
Los diccionarios tiene métodos y funciones para poder manipular y procesar datos con ellos:
clear(): Elimina todos los elementos del diccionario.
copy(): Devuelve una copia superficial (shallow copy) del diccionario.
get(key, default=None): Devuelve el valor de la clave especificada. Si la clave no existe, devuelve el valor predeterminado (por defecto None).
pop(key, default=None): Elimina y devuelve el valor asociado a la clave. Si la clave no existe, devuelve el valor predeterminado (por defecto None) o lanza una excepción si no se proporciona el valor predeterminado.
popitem(): Elimina y devuelve el último par clave-valor del diccionario en forma de tupla.
setdefault(key, default=None): Devuelve el valor de la clave especificada. Si la clave no existe, agrega la clave con el valor predeterminado (por defecto None).
update(other_dict): Actualiza el diccionario con los pares clave-valor del diccionario other_dict. Si la clave ya existe, su valor será actualizado; de lo contrario, se agregará un nuevo par clave-valor.
Funciones para diccionarios:
len(diccionario): Devuelve el número de elementos en el diccionario.
dict(iterable): Crea un diccionario a partir de una secuencia de pares clave-valor (por ejemplo, una lista de tuplas).
sorted(diccionario): Devuelve una lista de las claves del diccionario ordenadas.
Gracias por compartir
Los diccionarios se los utiliza con corchetes { }
Esos símbolos que tú llamas corchetes realmente se llaman llaves: “{” y “}”.
Se consideran corchetes a los siguientes símbolos: “[” (corchete abierto) y “]” (corchete cerrado).
Las listas se definen con corchetes: [x1,x2,x3]
Las tuplas se definen con paréntesis: (x1,x2,x3)
Los diccionarios se definen con llaves: {x1,x2,x3}
Y se pueden combinar las tres o no?
Yo solía llamarle corchetes a las llaves y viceversa . Hoy lo corregí.
JSON ¿eres tú?
xD
Usando if
bus = input("llave que buscas => ")
if bus in mi_dic:
print("busca ",mi_dic[bus])
else:
print("llave no encontrada")
Buen aporte 👍
Es posible imprimir dos valores de un diccionario en un solo print? que te de name + last_name?
Habría que intentarlo, pero muy buena pregunta
#algo especifico no se si exista, pero se me ocurre esto para salvar la situacion
print(f"el nombre completo es : {my_dict['name']} {my_dict['last_name']}")
Algo importante de todo esto es el .get, por lo menos no te rompe el programa
<my_dict ={'avion':'bla bla bla','name':'Nicolas','last_name':'Molina monroy','age':87}print(my_dict)print(len(my_dict)) # aquí estamos buscando el número de elementos que contiene el diccionario
print(my_dict['age']) # nos imprime el valor que estamos buscando
print(my_dict['last_name'])print(my_dict.get('age')) # funciona iglual que el anterior, solo que en este caso si ponemos un elementos que no existe en el diccionario nos va a soltar una linea de texto "none", si hicieramos lo mismo con el comando o lo que sea anterior se nos buguearía el código.print('avion'in my_dict)print('otroqueno'in my_dict) # el resultado sería false porque ese elemento no existe dentro del diccionario, esto es otra forma de comprobar si existe un elemento o no en el diccionario.>
A manera de ilustración:
[ ]: Corchete. En Python se utilizan para crear Listas.
( ): Paréntesis. En Python se utilizan para crear Tuplas.
{ }: Llave. En Python se utilizan para crear Diccionarios.
lista -> [ ] -> Mutable
tupla -> ( ) -> Inmutable
diccionario -> { } -> formato key:value, mutable pero no admite duplicidad de keys
Diccionario ???? no es eso un objeto ????
Hola les comparto mi codigo comentado
#Diccionario#los diccionarios en python funcionan como los diccionarios de la vida real
# []=Listas# ()=Tuplas# {}=Diccionariosmy_dict ={}print(type(my_dict))my_dict ={'avion':"748B", #las llaves se definen como string
'name':"Luis",'last_name':'Bolaños','age':27}print(my_dict)#se puede haces las siguientes cosas con los diccionarios
print(len(my_dict)) #para leer el diccionario
print(my_dict['name']) #si no encuentra esto, marca un error, y detiene el programa
print(my_dict['last_name'])print(my_dict.get('peso')) #la diferecia con usar .get o no, es que si no esta definido me regresa un none, y continua con el programa
print('el avion es: ', my_dict['avion'])
#tambien se puede comprobar valores
print('¿Hay un valor que corresponda a avion?: ','avion'in my_dict)print('¿Hay un valor que corresponda a wheather?: ','wheather'in my_dict)
Entonces los diccionarios con corchetes "{ }" ?
Si, los diccionarios son LLAVES = { }
Las listas son corchetes = [ ]
correcto!
Los diccionarios en Python son estructuras de datos que almacenan pares de clave-valor. Puedes pensar en ellos como una colección de elementos, donde cada elemento está compuesto por una clave única y su correspondiente valor.
A diferencia de las listas o tuplas que se acceden mediante índices numéricos, los diccionarios permiten acceder a sus valores utilizando las claves asociadas a ellos. Esto hace que los diccionarios sean especialmente útiles cuando quieres buscar, recuperar o modificar valores basados en una clave específica.