No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Diccionarios: definici贸n y lectura

28/37
Recursos

Aportes 74

Preguntas 9

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

# [ ] = Listas
# ( ) = Tuplas
# { } = Diccionarios

JS - Python
Arreglo - Lista
Objeto - Diccionario

my dick escucho todo el rato xD

DICICIONARIOS, TUPLAS Y LISTAS
LISTA --> lista = [ ];
TUPLAS --> tupla = ( );
DICCIONARIO 鈥> diccionario = { }

#Los diccionarios se compones de llave, valor.
# muy similares a un archivo .json
my_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)
  • 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 get
print(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

Los diccionarios se los utiliza con corchetes { }

Usando if
bus = input("llave que buscas => ")
if bus in mi_dic:
print("busca ",mi_dic[bus])
else:
print(鈥渓lave no encontrada鈥)

JSON 驴eres t煤?

Yo sol铆a llamarle corchetes a las llaves y viceversa . Hoy lo correg铆.

A los diccionarios en python los conocemos como 鈥渙bjetos鈥 en otros lenguajes de programaci贸n, a continuaci贸n una lista de sus caracter铆sticas m谩s destacables:

  1. Los diccionarios son colecciones de pares clave-valor.
  2. Las claves son 煤nicas e inmutables (generalmente cadenas o n煤meros).
  3. Los valores pueden ser de cualquier tipo (enteros, cadenas, listas, tuplas, otros diccionarios, etc.).
  4. Los diccionarios se definen utilizando llaves {}.
  5. Los pares clave-valor se separan por comas.
  6. Puedes acceder a los valores mediante la clave utilizando la notaci贸n de corchetes [].
  7. Puedes modificar, agregar o eliminar elementos de un diccionario.
  8. La funci贸n len(diccionario) devuelve el n煤mero de elementos en el diccionario.
  9. Los diccionarios no tienen un orden espec铆fico, es decir, no se puede acceder a sus elementos por 铆ndice.
  10. Puedes iterar sobre un diccionario utilizando bucles for.
  11. El m茅todo dict() se utiliza para crear un diccionario vac铆o.
  12. El m茅todo keys() devuelve una lista de todas las claves del diccionario.
  13. El m茅todo values() devuelve una lista de todos los valores del diccionario.
  14. 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:

  1. clear(): Elimina todos los elementos del diccionario.
  2. copy(): Devuelve una copia superficial (shallow copy) del diccionario.
  3. get(key, default=None): Devuelve el valor de la clave especificada. Si la clave no existe, devuelve el valor predeterminado (por defecto None).
  4. 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.
  5. popitem(): Elimina y devuelve el 煤ltimo par clave-valor del diccionario en forma de tupla.
  6. 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).
  7. 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:

  1. len(diccionario): Devuelve el n煤mero de elementos en el diccionario.
  2. dict(iterable): Crea un diccionario a partir de una secuencia de pares clave-valor (por ejemplo, una lista de tuplas).
  3. sorted(diccionario): Devuelve una lista de las claves del diccionario ordenadas.

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.

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

lista -> [ ] -> Mutable

tupla -> ( ) -> Inmutable

diccionario -> { } -> formato key:value, mutable pero no admite duplicidad de keys

Entonces los diccionarios con corchetes 鈥渰 }鈥 ?

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.

Los diccionarios en Python, al igual que las listas y las tuplas, nos permiten almacenar diferentes tipos de datos: Strings, enteros, flotantes, booleanos, tuplas, listas e inclusive otros diccionarios. 馃槸

Los diccionario son mutables, es decir, es posible modificar su longitud, podemos agregar o quitar elementos de 茅l; de igual forma todos los valores almacenados en el diccionario pueden ser modificados.

A diferencias de las listas y de las tuplas los diccionarios no se rigen por la regla de los 铆ndices, no, nada de eso, en este caso todos los valores que se almacenen en el diccionario no corresponder谩 a un 铆ndice, si no a una llave

Diccionarios en Python

from os import system
system('clear')

#declaraci贸n
my_dict = {}
my_dict = {
  'name': 'Nicolas',
  'last_name': 'Molina Monroy',
  'age': 87,
  'skils': ['python','javascript']
}

print(' ')
print(type(my_dict))

#Mostrando el diccionario y tama帽o del mismo
print('Contenido del diccionario')
print(my_dict)
print('tama帽o del diccionario',len(my_dict))
print(' ')

#Accediendo a un valor de u diccionario. S铆 leemos con la funci贸n my_get() se evita que el programa se detenga, ya que, s铆 el valor no existe python no dentra el programa
print('name:         ',my_dict['name'])
print('lastname:     ',my_dict['last_name'])
print('skill:        ',my_dict.get('skils'))
print(' ')

#Verificando si un valor existe, en el diccionario
print('avion' in my_dict)
print('otroqueno' in my_dict)

Algo importante de todo esto es el .get, por lo menos no te rompe el programa

A continuaci贸n los ejemplos de la clase

my_dict = {
鈥榥ame鈥: 鈥楳ilton鈥,
鈥榣ast_name鈥: 鈥榁alle鈥,
鈥榓ge鈥 : 42
}

print(my_dict)
print(len(my_dict))

print(my_dict[鈥榓ge鈥橾)
print(my_dict[鈥榣ast_name鈥橾)
print(my_dict.get(鈥榓ge鈥))

print(鈥榓vion鈥 in my_dict)
print(鈥榥ame鈥 in my_dict)

Este me parece que es la estructura un poco mas complicado pero vamos a aprender.
aqui aprendiste el concepto del diccionario y como se crea.
Diccionario = es la estructura que tiene llave y valor en ingles: key y value.
{key:value}

cada vez que cierras una llave estas creando un diccionario.
ahora; una vez creada la llave no puedes cambiar la llave solo el valor asi

diccionario = {"Nombre":"Jose Potes", "Edad": 28, "Nacionalidad":"Singapurense"}

Para actualizarlo solo usa:

actualizacion = diccionario["Nacionalidad"] = "Colombia"

esto es importante, creeme, prestale mucha atencion a esta parte.

Ventajas de usar diccionarios
Mapeo de datos: Los diccionarios son ideales para asociar valores con claves 煤nicas. Permiten almacenar informaci贸n estructurada donde cada valor se relaciona con una clave espec铆fica, facilitando el acceso a los datos de manera r谩pida y eficiente.

B煤squeda eficiente: Los diccionarios utilizan tablas hash internas para realizar b煤squedas directas por clave, lo que resulta en una b煤squeda muy r谩pida y eficiente en comparaci贸n con las listas o tuplas, donde la b煤squeda requiere iterar a trav茅s de elementos.

Acceso a datos por etiquetas: Los diccionarios permiten acceder a los datos utilizando etiquetas o nombres significativos (claves) en lugar de 铆ndices num茅ricos, lo que hace que el c贸digo sea m谩s legible y f谩cil de entender.

_Asociaci贸n de propiedades: _Los diccionarios son 煤tiles para asociar propiedades con sus respectivos valores. Puedes usarlos para representar objetos con m煤ltiples atributos y acceder a cada atributo por su nombre (clave).

_Evitar duplicados: _Los diccionarios aseguran que las claves sean 煤nicas, lo que evita duplicados en la estructura de datos. Cada clave tiene asociado un 煤nico valor, lo que ayuda a mantener la integridad de los datos.

Actualizaci贸n y eliminaci贸n eficientes: Los diccionarios permiten agregar, modificar o eliminar elementos de forma muy eficiente. Puedes actualizar el valor asociado con una clave existente o eliminar una clave y su valor de manera r谩pida.

Organizaci贸n de datos complejos: Los diccionarios pueden contener otras estructuras de datos, como listas o tuplas, lo que te permite organizar datos complejos en una sola estructura. Esto es 煤til para manejar informaci贸n con m煤ltiples niveles de jerarqu铆a.

( ) = tuplas
[ ] = lista
{ } = diccionario

Buena explicaci贸n de los conceptos y su uso.

Les comparto el c贸digo de la clase.

# Diccionarios: definici贸n y lectura

my_dict = {}
print(type(my_dict))

my_dict = {
  "avion": "pajaro metalico",
  "name": "Sara",
  "last_name": "Mejia",
  "age": 30
}

print(my_dict)
print(len(my_dict))

print(my_dict["name"])
print(my_dict["last_name"])

# En caso de no conocer exactamente el nombre de la llave, se usa get
print(my_dict.get("un valor"))

print("avion" in my_dict)
print("pajaro" in my_dict)
print("pajaro" not in my_dict)

visto en clase

He entendido bien lo que son los diccionarios en Python a trav茅s de la comparaci贸n con un diccionario real. Me parece una estructura de mucha utilidad. Sin embargo, tuve que mirar varias veces la sintaxis del profesor cuando estaba escribiendo mi c贸digo.

Tambi茅n se puede usar el metodo dict() para crear un diccionario =)

Tan sencillo pero tan claro y con la analogia explicita de diccionario (por algo se le llam贸 as铆) ahora entiendo mejor el tema de diccionarios en Python.

my_dict = {}
print(type(my_dict))

my_dict = {
  'avion':'bla bla bla',
  'name':'Nicolas',
  'last_name':'Molina monroy',
  'age':87
}

print(my_dict)
print(len(my_dict))

print(my_dict['age'])
print(my_dict['last_name'])
print(my_dict.get('age'))

print('avion' in my_dict)
print('otroqueno' in my_dict)

Muy utiles los diccionarios

![](https://static.platzi.com/media/user_upload/image-2ef0af5b-57ae-4bf6-822f-afdd25ac7460.jpg)
![](https://static.platzi.com/media/user_upload/image-033302da-a45d-4d34-aee1-a592e2803a48.jpg) Hola a todos!...alguien seria tan amable de ayudarme en encontrar el error? dice que est谩 en la linea 8 pero la verdad no le encuentro la diferencia con el c贸digo del ejercicio. Muchas gracias
Por lo que veo los diccionario se entender铆an muy bien con los objetos en javascript, esto facilita el intercambio de informaci贸n entre el frontend y backend

Hola les comparto mi codigo comentado

#Diccionario
#los diccionarios en python funcionan como los diccionarios de la vida real
# [ ] = Listas
# ( ) = Tuplas
# { } = Diccionarios

my_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)

[ ] Listas
( ) Tuplas
{ } Diccionario

esos diccionarios son muy parecidos a programar en bases de datos no sql como mongoDB

Diccionarios

  • estructura de datos que tienen clave, valor
  • permite operaciones CRUD

Colecciones de Python (matrices)

Hay cuatro tipos de datos de recopilaci贸n en el lenguaje de programaci贸n Python:

  • La lista es una colecci贸n ordenada y modificable. Permite miembros duplicados.

  • Tuple es una colecci贸n ordenada e inmutable. Permite miembros duplicados.

  • Conjunto es una colecci贸n desordenada, inmutable* y no indexada. No hay miembros duplicados.

  • El diccionario es una colecci贸n ordenada** y modificable. No hay miembros duplicados.

*Los elementos establecidos no se pueden cambiar, pero puede eliminar elementos y agregar nuevos elementos.

**A partir de la versi贸n 3.7 de Python, los diccionarios se ordenan . En Python 3.6 y versiones anteriores, los diccionarios est谩n desordenados .

Al elegir un tipo de colecci贸n, es 煤til comprender las propiedades de ese tipo. Elegir el tipo correcto para un conjunto de datos en particular podr铆a significar la retenci贸n del significado y podr铆a significar un aumento en la eficiencia o la seguridad.

my_dict = {}
print(type(my_dict))

my_dict = {
  'avion': "bla bla bla",
  'name': 'Nicolas',
  'last_name': 'Molina Monroy',
  'age': 87
}

# Print the dict
print(my_dict)

# Len of the dict
print(len(my_dict))

# Print value of a key
print(my_dict['age'])
print(my_dict['last_name'])

# Print value of a key with get() method (Return Null if there is not value)
print(my_dict.get('age'))


# Buscar el valor de una llave por el nombre de la llave
print('avion' in my_dict)
print('otroqueno' in my_dict)```

diferencia en declaraion de estructuras de datos # [ ] = Listas # ( ) = Tuplas # { } = Diccionarios

Diccionario . secuencia de valores con indices de cualquier tipo.
tipo : asociacion de indices que se le llamara claves y conjunto de valores. Esta asociacion de clave-valor es llamada part clave-valor o elemento.

Diccionarios: son estructura de datos muy util en python que permite almacenar informacion en forma de clave-valor.

Esta es la forma eficiente de manejar grandes cantidades de datos.

Parece POO

{ } --> Llaves

Un diccionario es una estructura de datos mutable y sin orden que permite almacenar pares clave-valor. Cada elemento en un diccionario consiste en una clave 煤nica y su correspondiente valor asociado. La clave act煤a como un identificador 煤nico para acceder al valor correspondiente de manera eficiente.

A diferencia de las listas o las tuplas, que se acceden mediante 铆ndices num茅ricos, los diccionarios se acceden mediante las claves. Esto proporciona una forma r谩pida de buscar y recuperar valores asociados con una clave determinada.

Los diccionarios en Python son una herramienta poderosa y vers谩til para organizar y manipular datos de manera eficiente. Se utilizan ampliamente en diversos escenarios, como el procesamiento de datos, la configuraci贸n de aplicaciones, el almacenamiento de informaci贸n estructurada y mucho m谩s.

.len = para preguntar cuantos elementos tiene un diccionario .get = sirve para preguntar al diccionario, si existe un valor y en caso de no existir lo indicara mediante la palabra none .in = nos sirve para preguntar dentro de un diccionario si existe un valor y no indica mediante True o False.

my_dict = {
鈥渁vion鈥: 鈥淯n objeto volador鈥,
鈥渘ame鈥: 鈥淎ngelo鈥,
鈥渁ge鈥: 鈥15鈥
}

print(type(my_dict), my_dict)
print(len(my_dict))

print(my_dict[鈥渁vion鈥漖)
print(my_dict[鈥渁ge鈥漖)
print(my_dict[鈥渘ame鈥漖)

print(my_dict.get(鈥渁aa鈥)) #none

print(my_dict[鈥渁aa鈥漖) #error

print(鈥渁vion鈥 in my_dict) #true
print(鈥渁aa鈥 in my_dict)

import os
import time
import random
os.system("clear")

tijera = {
  'papel': 'gana tijera',
  'piedra': ' gana piedra',
  'tijera': 'empate'
}
piedra = {
  'papel': 'gana papel',
  'tijera': 'gana piedra',
  'piedra': 'empate'
}
papel={
  'papel': 'empate',
  'piedra': 'gana papel',
  'tijera': 'gana tijera'
}

def play():
  options = ("piedra", "papel", "tijera")
  user_selection = input("piedra, papel o tijera? =>")
  if not user_selection in options:
    print("Intenta seleccionar una opcion valida")
  print("*" * 50)
  print(f"Has seleccionado {user_selection}")
  time.sleep(3)
  comp_selection = random.choice(options)
  print(f"La computadora a elegido {comp_selection}")
  print("*" * 50)
  time.sleep(3)
  if user_selection == "tijera":
    print(tijera[comp_selection])
  elif user_selection == "piedra":
    print(piedra[comp_selection])
  elif user_selection == "papel":
    print(papel[comp_selection].capitalize())

play()

Mucho que practicar, tremenda clase.

Aparte de que la funci贸n get() no rompe el programa, te permite agregar un valor por default si la clave no existe

default_value = 50
print( my_dict.get( 'noexiste', default_value ))

# En consola => 50

Muy buena clase

mi_diccionario = {}
print(type(mi_diccionario))

mi_diccionario = {
鈥渁vion鈥: 鈥渧uela鈥,
鈥渘ombre鈥: 鈥渃amilo鈥,
鈥渁pellido鈥: 鈥渟alazar鈥,
鈥渆dad鈥: 22
}

print(mi_diccionario)

cantidad de palabras del diccionario

print(len(mi_diccionario))

#saber la posicion de la variable y da su significado
print(mi_diccionario[鈥渆dad鈥漖)
print(mi_diccionario[鈥渁vion鈥漖)

preguntar con el .get si esta en el diccionario

print(mi_diccionario.get(鈥渧alor鈥))

print(鈥渁vion鈥 in mi_diccionario)
print(鈥渧alor鈥 in mi_diccionario)

my_dict = {} # Se definen con corchetes
print(type(my_dict)) # Tienen claves y valor
# Normalmente vienen como strings
my_dict = {
  'avion': 'el avion melo',
  'name': 'Andres',
  'last_name': 'Sanchez Ballesteros',
  'age': 22
 }

print(my_dict)
print(len(my_dict))

print(my_dict['age'])
print(my_dict['last_name'])
print(my_dict.get('age')) # .get(valor) tambien obtiene el valor, se previenen errores

print('avion' in my_dict)
print('otro' in my_dict)

Tambien podemos agregar llaves-valors a nuestro diccionario

my_dict [鈥榗iudad鈥橾 = 鈥楤arcelona鈥

my_dict = {}
print(type(my_dict))
my_dict ={
鈥榓uto hibrido鈥: 鈥榖la bla bla鈥,
鈥榥ame鈥 : 鈥楯ohnny鈥,
鈥榣ast_name鈥 : 鈥楧elgado Rodriguez鈥,
鈥榓ge鈥: 鈥45鈥
}

print(my_dict)
print (len(my_dict))
print (my_dict[鈥榓ge鈥橾)
print (my_dict[鈥榣ast_name鈥橾)
鈥欌欌
print (my_dict.get(鈥榓ge鈥))
鈥欌'
print (my_dict.get(鈥榰n valor鈥))
print(鈥榓uto hibrido鈥 in my_dict)
print(鈥榤ototaxi鈥 in my_dict)

Estructura:

鈥樷欌
dictionary{
鈥渃lave鈥: 鈥渧alor鈥
}
鈥欌欌

Un ejemplo pr谩ctico del uso de diccionarios (o tambi茅n llamado objetos en otros lenguajes), con usuarios:

user1 = {
  'height':1.65,
  'last_name':"Dishman",
  'age': 35 
}

user2 = {
  'height':1.74,
  'last_name':"Larrat",
  'age': 23 
}

#Diccionario se crea mediante { }

#Su sintaxis es la siguiente 鈥楧ato Inicial鈥:鈥淭raducci贸n鈥
#para buscar el valor se llama la variable y en [鈥渆l campo a consultar鈥漖

#por medio del get arroja un valor si est谩 si no arroja NULL, se utilizar para evitar errores y paros de procesos en python

#Validar campos en diccionario mediante la funcion IN ejemplo: print (鈥淰alor鈥 in Variable)

Los diccionarios en Python鈥

Los objetos en JavaScript y los JSON en JavaScript comparten algunas similitudes en su estructura y prop贸sito, pero hay algunas diferencias importantes entre ellos.

  • Un diccionario en Python es una estructura de datos que permite almacenar y acceder a valores mediante claves 煤nicas. Los valores pueden ser de cualquier tipo de datos, incluidos otros diccionarios, y se acceden a ellos mediante sus claves. Los diccionarios en Python se definen utilizando llaves {} y separando cada par clave-valor con una coma. Por ejemplo:
mi_diccionario = {'nombre': 'Juan', 'edad': 25, 'telefono': '123456789'}

En cambio, en JavaScript, un objeto es una estructura de datos similar a un diccionario en Python. Los objetos tambi茅n permiten almacenar y acceder a valores mediante claves 煤nicas, pero a diferencia de los diccionarios en Python, los objetos en JavaScript pueden contener m茅todos (funciones) y no tienen una sintaxis espec铆fica para su creaci贸n. Por ejemplo:

let mi_objeto = {nombre: 'Juan', edad: 25, telefono: '123456789'};

Por otro lado, JSON (JavaScript Object Notation) es un formato de intercambio de datos que se utiliza para enviar datos entre aplicaciones. Es un formato de texto simple que es f谩cil de leer y escribir para humanos, y f谩cil de analizar y generar para las aplicaciones. JSON utiliza una sintaxis similar a la de los objetos en JavaScript y los diccionarios en Python, pero tiene algunas limitaciones en cuanto a los tipos de datos que se pueden representar. Por ejemplo:

{
    "nombre": "Juan",
    "edad": 25,
    "telefono": "123456789"
}

En resumen, las principales diferencias entre un diccionario en Python, un objeto en JavaScript y JSON en JavaScript son la sintaxis de creaci贸n, la capacidad de incluir m茅todos y la utilizaci贸n de JSON como formato de intercambio de datos entre aplicaciones. Sin embargo, todas estas estructuras permiten almacenar y acceder a valores mediante claves 煤nicas y son ampliamente utilizadas en sus respectivos lenguajes de programaci贸n.

Otra vez: El profe parece que se diera clase a 茅l mismo: La sintaxis? casi no dice nada de lo que usa. Por ej. aqui no dice que cada par de datos debe ir con los 2 puntos, y al final UNA COMA鈥 uno tiene que cometer el error al probar y aprender!!!

En clases anteriores lo mismo: No se refiere explicitamente a la sintaxis!.. aprendizaje por PRUEBA y ERROR

Considero que si bien los profesores son muy buenos es importante que manejen un buen speaking y no tengan english gaps en la pronunciacion

Los diccionarios en Python nos permiten almacenar una serie de mapeos entre dos conjuntos de elementos, llamados keys and values (Claves y Valores) Ej: 鈥榗lave鈥:鈥榲alor鈥, 鈥榥ame鈥:鈥楴ico鈥, 鈥榓nimal鈥: 鈥榞aviota鈥, etc. Todos los elementos en el diccionario se encuentran encerrados en un par de llaves 贸 corchetes { }.

my_dict = {}
print(type(my_dict))

#propiedad : definicion
my_dict = {
  'avion': "bla bla bla",
  'name': 'Nicolas',
  'last_name': 'Molina Monroy',
  'age': 87
}

print(my_dict)
# Para saber cuantos elementos hay dentro del diccionario
print(len(my_dict))

#para saber en que posicion esta ese objeto
print(my_dict['age'])
print(my_dict['last_name'])
#.get se utiliza para saber si en verdad hay un dato
print(my_dict.get('age'))

# in se utiliza para validar si un elemento esta dentro del diccionario
print('avion' in my_dict)
print('otroqueno' in my_dict)

Podemos usar los diccionarios para mejorar la legibilidad en nuestro juego a la hora de tener que ver si el usuario gan贸 o perdi贸

if user_option == pc_option:
  print('Empate')
else:
  battle_options = {
    'piedra': {
      'tijera': True,
      'papel': False
    },
    'papel': {
      'tijera': False,
      'piedra': True,
    },
    'tijera': {
      'papel': True,
      'piedra': False
    }
  }

  user_win = battle_options[user_option][pc_option];
  if user_win:
    print('Ganaste :D')
  else:
    print('Perdiste :(')

De esta manera es m谩s f谩cil entender a simple vista qu茅 sucede en cada caso

in my dick.

Cuando aprendi un poquito de python hace tiempo no me d铆 cuenta que la estructura de los diccionarios es muy similar a la del formato Json.

my_dict = {}
print(type(my_dict))

my_dict={
    "avion":"bla bla bla",
    "name":"Nicolas",
    "last_name":"Moreno Alca",
    "age":21
}
print(my_dict)
print(len(my_dict))

print(my_dict["name"])
print(my_dict["age"]) #Si no existe, colapsa el programa
print(my_dict.get("age")) #Si no existe lo maneja

#Comprabando si un elemento existe
print("avion" in my_dict) 




"""
Diccionarios{}
-Estructuras de datos que permite almacenar valores de diferente tipo.
-Son junto a las listas las colecciones m谩s utilizadas y se basan en una estructura mapeada
donde cada elemento de la colecci贸n se encuentra identificado con una clave 煤nica, por lo que no
puede haber dos claves iguales. En otros lenguajes se conocen como arreglos asociativos.
-Su acceso a datos es por medio de una clave.
-Presentan claves unicas
"""
#Sintaxis 
numeroForma1={
    "num1":25,
    "num2":12
}
print(numeroForma1)
my_dict = {}
print(type(my_dict))

my_dict = {
  'avion': "bla bla bla",
  'name': 'Ivan',
  'last_name': 'Negrete Avilez',
  'age': 23
}

print(my_dict) 

#驴Cuantos elementos hay dentro del diccionario
print(len(my_dict))
#Como ir al valor que me interesa (leer)
print(my_dict['age'])
print(my_dict['last_name'])
#Otra forma de ir al valor que me interesa (leer) UTILIZAR ESTE MEJOR
print(my_dict.get('age'))
print(my_dict.get('Otro valor'))

#Validar si un dato esta dentro del diccionario
print('avion' in my_dict)
print('otro que no' in my_dict)
""" Dictionary """
my_dicto = {
  "name":"Elisabeth",
  "age": 23,
  "live": True,
  False: "window",
  True: 73,
  1000: "counter",
  -123: False,
  58: 934
}
print("my_dicto =", my_dicto)
print(type(my_dicto))

# basic operators with dictonary
print("-" * 35)
person = {
  "name": "Black",
  "last_name": "Star",
  "age": 19,
  "live": True,
  "resonance": True
}
print("person =", person)
print("person['name'] =>", person['name'])
print('person["live"] =>', person["live"])
print('person.get("resonance") =>', person.get("resonance"))
print('person.get(1234) =>', person.get(1234))
print('len(person) =>', len(person))
print('"last_name" in person =>', "last_name" in person) # solo para verificar las keys
print('"Star" in person =>', "Star" in person)

Algo para grabar sobre m谩rmol, **
cuando Python encuentra un error se detiene el programa. **

I LOVE PYTHON

my_dic = {
	'love' : 'Python and only Python
}

my_dict = {}
print(type(my_dict))

my_dict = {
鈥榓vion鈥: 鈥渂la bla bla鈥,
鈥榥ame鈥: 鈥楴icolas鈥,
鈥榣ast_name鈥: 鈥楳olina Monroy鈥,
鈥榓ge鈥: 87
}

print(my_dict)
print(len(my_dict))

print(my_dict[鈥榓ge鈥橾)
print(my_dict[鈥榣ast_name鈥橾)
print(my_dict.get(鈥榓ge鈥))

print(鈥榓vion鈥 in my_dict)
print(鈥榦troqueno鈥 in my_dict)