No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Listas y diccionarios anidados

7/21
Recursos

Aportes 298

Preguntas 86

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Para imprimir los valores de super_list

for values in super_list:
        for key, value in values.items():
            print(f'{key} - {value}')

La sencillez de Python:

for item in super_list:
    print(item["firstname"] , "-" , item["lastname"])

Mi aporte…no es mucho, pero es trabajo honesto 😃

    for i in super_list:
        print(i["firsname"],"-",i["lastname"])

Hola,

Existe una extensión en VS Code para crear automáticamente archivos .gitignore según el lenguaje en el que estes trabajando:

https://marketplace.visualstudio.com/items?itemName=hasanali.gitignore-templates

Saludos.

def run():
    my_list = [1, "Hello", True, 4.5]
    my_dict = {"firstname": "Facundo", "lastname": "García"}

    super_list = [
        {"firstname": "Facundo", "lastname": "García"},
        {"firstname": "Miguel", "lastname": "Rodriguez"},
        {"firstname": "Pablo", "lastname": "Trinidad"},
        {"firstname": "Susana", "lastname": "Martinez"},
        {"firstname": "José", "lastname": "Fernandez"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 3, 0, 1],
        "floating_nums": [1.1, 4.55, 6.43],
    }

    for key, value in super_dict.items():
        print(key, "-", value)

    for i in super_list:
        print(i["firstname"], "-", i["lastname"])


if __name__ == '__main__':
    run()

Guía para iniciar un proyecto de Python como profesional 🐍

  1. Crear la carpeta donde alojaremos el proyecto usando el comando
    mkdir nombre_carpeta_proyecto
  2. Inicializarlo como un repositorio de Git con el comando git init
  3. Creamos un nuevo entorno virtual del proyecto → py -m venv venv
  4. Inicializa el entorno virtual del proyecto con el comando (alias) → avenv
  5. Dentro del proyecto creamos el archivo .gitignore
  6. Agregar la carpeta venv al archivo .gitignore de la siguiente forma venv/

Para los que no le funciona el comando code . en mac hagan lo siguiente. Dirijanse a visual studio code, alli presionen SHIFT + COMMAND + P. Escibran en el buscador SHELL y seleccionen la opcion Shell Command : Install code in PATH. Eso es todo, vayan al a la terminal y empiecen a usarlo

TIP Pueden crear archivos desde la terminal es una buena practica y es mucho mas profesional, de la siguiente manera:

touch list_and_dictcs.py

#El comando touch crea archivos, pero recuerda colocar la extension del archivo que estas creando al final en este caso .py

Este tema es vital para Data science, actualmente estoy almacenando libos clásicos tokenizados en diccionarios, y anidar en este caso es un asolución bastante buena.

Vamos probando y aprendiendo nuevas cosas en Python 😃

Dejo mis apuntes de esta sección : )

Les dejo mi solución 😃

Cuando utilizas el comando “code .” le dices a la terminal que abra visual studio code en la carpeta donde te encuentres pero si solo pones “code”, sin un punto, la terminar solo abrirá visual studio code.

Hola a todos, les cuento algunos pequeños tropiezos que tuve en la practica, al momento de iniciar el entorno virtual en Git Bash con el comando dado por el profesor, no me iniciaba nada por lo que investigando, encontré la solución de la siguiente forma. 👍

Antes:

.\venv\Scripts\activate

Despues:

. venv/Scripts/activate

Espero que esto sea de ayuda para ustedes.

Desues de ver varios ejemplos aca abajo me quede con esto espero que les sirva

for i in super_list:
    print("name: "+  i["firstname"] + " " + i["lastname"])

Notas 😄
Listas y diccionarios anidados.

  • Para ignorar el environment env lo agregamos en el archivo .gitignore 😃.
  • Las listas y los diccionarios son estructuras de datos, ambas son maneras de organizar objetos. Las listas pueden almacenar diccionarios y los diccionarios listas 🤯.
  • if __name__=='__main__' es el entry point del script 🐍.+
def main():
    # Lists with dictionaries inside 😋
    super_list = [
        {'firstname':'Missael', 'lastname':'Barco'},
        {'firstname':'Gabriel', 'lastname':'Torres'},
        {'firstname':'David', 'lastname':'Mendoza'},
        {'firstname':'María', 'lastname':'García'}
    ]

    # Dictionaries with lists inside 👀
    super_dict = {
        'natural_nums':[1, 2, 3, 4, 5],
        'integer_nums':[-1, -2, 0, 1, 2],
        'floating_nums':[1.1, 4.5, 6.43]
    }

    # Check the content of the super_dict 🤔
    for key, value in super_dict.items():
        print(key, '=', value)

    # Check the content of the super_list 🔍
    for dictionarie in super_list:
        print(dictionarie)

if __name__=='__main__':
    main()

Si eres de los que siempre crea una carpeta con “mkdir” y después te mueves a ella con “cd”. Puedes probar “take”, en vez de usar “mkdir tu_carpeta”, cuando usas “take tu_carpeta”; este comando crea la carpeta y te mueve a ella directamente.

Para tener en cuenta, yo tengo una Mac e instalado ohmyzsh.

😄

😃 Mostrando los elementos de ambas estructuras de datos.

def run():
    super_list = [
        {"firstname": "Pablo", "lastname": "Trinidad"},
        {"firstname": "Susana", "lastname": "Martinez"},
        {"firstname": "José", "lastname": "Fernandez"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 3, 0, 1],
        "floating_nums": [1.1, 4.55, 6.43],
    }

    for value in super_list:
        print(value)

    for key, value in super_dict.items():
        print(key, ">", value)


if __name__ == "__main__":
    run()

La linea

if __name__ == "__main__":
    run()

se explica en la clase Proyecto: palíndromo del curso basico de python

Escribir: code nombre_de_la_carpeta abre el editor en esa carpeta sin tener que ingresar a ella.

Mi aporte

Mi aporte de super Listas

    for values in super_list:
        for key,value in values.items():
            print(key, ":", value)

Codigo completo

def run():
    my_list = [1, "Hello", True, 4.5]
    my_dict = {"first name": "Antonio", "lastname": "Demarco"}

    super_list = [
        {"first name": "Antonio", "lastname": "Demarco"},
        {"first name": "Jair", "lastname": "Bolsonaro"},
        {"first name": "Donald", "lastname": "Trump"},
        {"first name": "Santiago", "lastname": "Abascal"},
        {"first name": "Alvaro", "lastname": "Uribe"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 0, 1, 2],
        "floating_nums": [1.1, 4.5, 6.43],
    }

    #for key, value in super_list.items():
    #   print(key, "-", value)
    
    for values in super_list:

        for key, value in values.items():
            
            print(f'{key} - {value}')

if __name__ == '__main__':
    run()

Impresión de la super lista:

Hola chicos si quieren crear un archivo gitignore más completo puede usar esta página gitignore

Solo ponen el lenguaje o incluso el framework que van a utilizar y les genera un gitignore según lo que hayan puesto

Si usan npm (del mundo de JavaScript) pueden usar este comando para generar un .gitignore básico para proyectos con Python o de otro tipo:

npx gitignore python

También pueden usar este sitio para generar un gitignore de diferentes tipos de proyectos: https://www.toptal.com/developers/gitignore

no se que tan bien este, pero de que corre corre

for i in super_list:
	for key, value in i.items() :
            print(key, "-", value)
 
for item in super_list:
	print(item['firstname'], '-', item['lastname'])

Mi solución al reto:

for i in super_list:
        for key, values in i.items():
            if key == "firstname":
                firstname = values
            elif key == "lastname":
                lastname = values
        print(firstname + " " + lastname) 

Yo aprendí en esta clase el valor de simple es mejor que complejo, dado que aunque habia hecho el codigo para super_list no quedo tan bien como la sugerencia hecha por un compañero, les comparto el código

Cada vez quiero saber mas de Python ♥

Yo encontre varias formas de imprimir la lista, la que menos omitia datos era esta:

print("\n".join(map(str, super_lista)))

La función join() en Python se usa para unir elementos de cualquier iterable con la ayuda de un separador de cadenas. El separador de cadena utilizado anteriormente es \n, que es el carácter de nueva línea que se utiliza para indicar el final de una línea. Es por eso que cada elemento está en una línea diferente en la salida.

Mi ejercicio! 😄

Asi logré imprimir los elemntos de la lista

por qué desde cmder no se ejecuta code .? ; me aparece el siguiente mensaje: "code" no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.

para quien no le funcione el comando code . , hay que agregar al PATH la carpeta bin de VS code
aquí un poco de info:
https://code.visualstudio.com/docs/editor/command-line

https://www.softzone.es/windows-10/como-se-hace/cambiar-path-variables-entorno/

por extraña razón no puedo anexar imagenes

def run():
    my_list = [1, "Hello", True, 4.5]
    my_dict = {"firstname":'Braian', "lastname":'Molina'}

    super_list = [
        {"firstname":'Braian', "lastname":'Molina'},
        {"firstname":'Pepe', "lastname":'Argento'},
        {"firstname":'Luis', "lastname":'Miguel'},
        {"firstname":'Susana', "lastname":'Gimenez'}
    ]

    super_dict = {
        "natural_nums":[1,2,3,4,5],
        "integer_nums":[-1,-2,0,1,2],
        "floating_nums":[1.1,4.5,6.43]
    }

    for key, value in super_dict.items():
        print(key, "-", value)
# Opcion 1
    print("")
    print("Opcion 1")
    for i in super_list:
        print(i)
# Opcion 2
    print("")
    print("Opcion 2")
    for i in super_list:
        for key, value in i.items():
            print(key, "-", value)
# Opcion 3
    print("")
    print("Opcion 3")
    for i in super_list:
        print(i["firstname"], i["lastname"])

if __name__ == '__main__':
    run()

Solución de problema de .gitignore
git rm . -r --cached
git add .
git commit -m “fixed untracked files”

Fuente: https://www.iteramos.com/pregunta/7813/gitignore-no-funciona

A mi me dio así:

for elemento in super_list:
        print(elemento)

Sé que deben haber más formas de hacerlo pero me confunden los demás aportes. En el curso básico Facundo lo enseñó así.

Fue lo primero que se me ocurrió xd:

for i in super_list:
        print( 'firstname',i['firstname'],'--',"lastname",i['lastname'])


Hago el recorrido de esta forma a una lista de diccionarios:

super_list=[
    {'firstname':'Freddy','lastname':'Silva hurtado1'},
    {'firstname':'Juan','lastname':'Silva hurtado2'},
    {'firstname':'Pepe','lastname':'Silva hurtado3'},
    {'firstname':'Alejandra','lastname':'Silva hurtado4'}
  ]
  super_dict={
    'nautural_nums':[1,2,3,4,5],
    'integer_nums':[-2,-1,0,1,2],
    'floating_nums':[1.1,4.5,6.43]
  }
  for x in range(0,len(super_list)):
    print(super_list[x]['firstname'],'-',super_list[x]['lastname'])

para que lo imprimido se vea mas organizado hice esto

    for elment in super_list:
        for key,value in elment.items():
            print(f"{key} - {value} ",end = "")
        print("\n")

output

firts_name - thomas second_name - rodrigues

firts_name - carlos second_name - garcia

firts_name - ema second_name - whatson

Que bueno es tener esta sección de comentarios; probé la mayoría de formas de iterara “super_list”. En lo personal en mi aprendizaje, es oro puro el aporte de cada compañero. Con fe a darlo todo. Thanks Platzi.

def run():
    my_list = [1, "Hello", True, 4.5]
    my_dict = {"firstname": "Kevin", "lastname": "Gutierrez"}

    super_list = [
        {"firstname": "Kevin", "lastname": "Gutierrez"},
        {"firstname": "Marvin", "lastname": "Ramirez"},
        {"firstname": "Kegura", "lastname": "Ruiz"},
        {"firstname": "Kumi", "lastname": "Valencia"},
        {"firstname": "Wendy", "lastname": "Perez"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 0, 1, 2],
        "floating_nums": [1.1, 4.5, 6.43]
    }

    print("********************************")
    for key, value in super_dict.items():
        print(key, "-", value)
    
    print("********************************")
    for key in super_list:
        print(key)

    print("********************************")
    for i in super_list:
	    print(i.items())
    
    print("********************************")
    for values in super_list:
        for key, value in values.items():
            print(f'{key} - {value}')
    
    print("********************************")
    for item in super_list:
        print(item["firstname"] , "-" , item["lastname"])
    
    print("********************************")
    for i in super_list:
        print(i["firstname"], "-", i["lastname"])


if __name__ == '__main__':
    list_example = ["apple", "banana", True, 5, 6.3]
    dict_example = {'nombre': 'Kevin', 'edad': 22}
    run()

def run():
my_list = [1, “Hello”, True, 4.5]
my_dict = {“firstname”: “Facundo”, “lastname”: “Garcìa”}

super_list = [
    {"firstname": "Facundo", "lastname": "Garcìa"},
    {"firstname": "Miguel", "lastname": "Rodriguez"},
    {"firstname": "Pablo", "lastname": "Trinidad"},
    {"firstname": "Susana", "lastname": "Martinez"},
    {"firstname": "José", "lastname": "Fernandez"},
]
super_dict = {
    "natural_nums": [1, 2, 3, 4, 5],
    "integer_nums": [-1, -2, 3, 0, 1],
    "floating_nums": [1.1, 4.55, 6.43],
}
print("Impresion del diccionario con listas")
for key, value in super_dict.items():
    print(key, ">", value)
print(" ")
print("Impresion de la lista con diccionarios")
for value in super_list:
    for key, value in value.items():
        print(key, ":", value)    
print(" ")
print("Otra forma")
for i in super_list:
    print(i.items())

if name == ‘main’:
run()

E:\curso-pyton (master)
(venv) λ py list_and_dicts.py
Impresion del diccionario con listas
natural_nums > [1, 2, 3, 4, 5]
integer_nums > [-1, -2, 3, 0, 1]
floating_nums > [1.1, 4.55, 6.43]

Impresion de la lista con diccionarios
firstname : Facundo
lastname : García
firstname : Miguel
lastname : Rodriguez
firstname : Pablo
lastname : Trinidad
firstname : Susana
lastname : Martinez
firstname : José
lastname : Fernandez

Otra forma
dict_items([(‘firstname’, ‘Facundo’), (‘lastname’, ‘GarcÃ\xada’)])
dict_items([(‘firstname’, ‘Miguel’), (‘lastname’, ‘Rodriguez’)])
dict_items([(‘firstname’, ‘Pablo’), (‘lastname’, ‘Trinidad’)])
dict_items([(‘firstname’, ‘Susana’), (‘lastname’, ‘Martinez’)])
dict_items([(‘firstname’, ‘José’), (‘lastname’, ‘Fernandez’)])

def run():
    my_list = [1, "Hello", True, 4.5]
    my_dict = {"firstname": "Facundo","lastname": "Garcia"}
    super_list =[
        {"firstname": "Facundo", "lastname": "García"},
        {"firstname": "maria", "lastname": "Rodriguez"},
        {"firstname": "Pablo", "lastname": "Trinidad"},
        {"firstname": "Susana", "lastname": "Martinez"},
        {"firstname": "luis", "lastname": "Florez"},
    ]

    super_dict ={
        "natural_nums":[1,2,3,4,5],
        "integer_nums": [-1,-2,0,1,2],
        "floating_nums": [1.1, 4.5, 6.43]
    }
    for key,value in super_dict.items():
        print (key, "-",value)

      
    # esto es para sacar todo completo como muesta la super_list:
    for value in super_list:
        print (value)


    # solo para sacar los firstname and lastname
    for i in super_list:
        print(i["firstname"], "-", i["lastname"])

if __name__ == '__main__':
    run()

Hola amigos, mi aporte.

def run():
    my_list = [1, 'hellow', True, 4.5]
    my:dict = {'firtsname': 'Facundo', 'lastname': 'García'}

    super_list = [
        {'firtsname': 'Facundo', 'lastname': 'García'},
        {'firtsname': 'Miguel', 'lastname': 'Torres'},
        {'firtsname': 'Pepe', 'lastname': 'Cabrera'},
        {'firtsname': 'María', 'lastname': 'Martínez'},
        {'firtsname': 'José', 'lastname': 'García'}
    ]

    super_dict = {
        'natural_nums': [1, 2, 3, 4],
        'integer_nums': [-1, -2, 0, 1, 2],
        'floating_nums': [1.1, 4.5, 6.41]
    }

    for item in super_list:
        print(item)

    for key, value in super_dict.items():
        print(key, '-', value)

        

if __name__ == "__main__":
    run()

Iterando sobre siper_list

for idx_dict in super_list:
	for key, value in idx_dict.items():
		print(key, "-", value)

Después de darle vueltas un tiempo me salió como quería 😃

def run():
my_list = [1, “Hello”, True, 4.5]
my_dict = {“firstname”: “Facundo”, “lastname”: “García”}

super_list = [
      {"firstname": "Facundo", "lastname": "García"},
      {"firstname": "Miguel", "lastname": "Torres"},
      {"firstname": "Pepe", "lastname": "Rodelo"},
      {"firstname": "Susana", "lastname": "Martínez"},
      {"firstname": "José", "lastname": "García"}
]

super_dict = {
    "natural_nums" : [1, 2, 3, 4, 5],
    "integer_nums" : [-2, -1, 0, 1, 2],
    "floating_nums" : [1.1, 4.5, 6.43],
}

# for key, value in super_dict.items():
#     print(key, "-", value)

for i in super_list:
    for key, value in super_list:
        print(key, ":", i ["firstname"], "-", value, ":", i  ["lastname"])
        break

if name == “main”:
run()

for i in super_list:
        for j, k in super_dict.items():
            print(j,'-',k)

ya resolvi el problema de abrir Visual studio code desde MAC, abrimos visual studio code, shift cmd + P shell install, regresamos ala terminal, y ahora si ejecutamos el comando code . ojala cuando hagan cursos no olviden a la comunidad de mac, suele ser muy frustrnte no encontrar apoyo en Platzi, por el costo del curso

Para los que usan Mac y el comando code . no funciona, se debe instalar en Visual Code lo siguiente:
Abra Visual Studio Code y presione Command + Shift + P luego escriba Shell en la paleta de comandos ahora puede encontrar esta opción como Shell Command : Install code in PATH de la lista sugerida en la paleta de comandos.
Y listo ya se puede abrir VC desde la terminal.

Este es mi aporte de como recorrí las super lista

def run():
    my_list = [1, "Hello", True, 4.5]
    my_dict = {"firstname":"Ray", "lastname":"Trápala"}

    # Lista de Diccionarios
    super_list = [
       {"firstname":"Ray", "lastname":"Trápala"},
       {"firstname":"Miguel", "lastname":"García"},
       {"firstname":"Pepe", "lastname":"Torres"},
       {"firstname":"Susana", "lastname":"Rodelo"},
       {"firstname":"José", "lastname":"García"},
    ]

    # Diccionario de listas
    super_dict = {
        "natural_nums":[1, 2, 3, 4, 5],
        "integer_nums":[-1, -2, 0, 1, 2],
        "float_nums":[1.1, 3.5, 6.43]
    }

    # Mostrando todos los elementos del diccionario
    for k,v in super_dict.items():
        print(f'{k} - {v}')
    
    #Mostrando todos los elementos de la lista
    for i in super_list:
        # Al ser los elementos diccionarios, se puede acceder
        # a los métodos propios de los diccionarios
        # Evitando el uso de un for anidado
        print(i['firstname'],i['lastname'],sep=' ')
        #print(i.keys())
        #print(i.values())
        #print(i.items())
        


if __name__ == '__main__':
    run()

Listo

def run():
  my_list = [1, "Hello", True, 4.5]
  my_dict = {"firstName": "Ivan", "lastName": "Diaz"}
  
  super_list = [
    {"firstName": "Ivan", "lastName": "Diaz"},
    {"firstName": "Brenda", "lastName": "Vazquez"},
    {"firstName": "Alan", "lastName": "Pedraza"},
    {"firstName": "Jorge", "lastName": "Aguilar"}
  ]
  
  super_diccionario = {
    "natural_nums": [1, 2, 3, 4, 5],
    "integer_nums": [-2, -1, 0, 1, 2],
    "floating_nums": [1.1, 1.2, 1.3, 1.4, 1.5]
  }
  
  for value in super_list:
    print(value)

if __name__ == '__main__':
  run()
(base) [email protected]MacBook-Pro-de-MACBOOK curso % python list_dicc.py
natural_nums > [1, 2, 3, 4, 5]
integer_nums > [-1, -2, 3, 0, 1]
floating_nums > [1.1, 4.55, 6.43]
(base) [email protected]MacBook-Pro-de-MACBOOK curso % 
def run():
    my_list = [1, "Hola", True, 4.5]
    my_dict = {"firstname": "Carlos", "lastname": "Ortiz"}

    super_list = [
        {"firstname": "Carlos", "lastname": "Ortiz"},
        {"firstname": "Fannita", "lastname": "Fuentes"},
        {"firstname": "Fermin", "lastname": "Altamirano"},
        {"firstname": "Silvia", "lastname": "Romero"},
        {"firstname": "Julietina", "lastname": "Rivera"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 3, 0, 1],
        "floating_nums": [1.1, 4.55, 6.43],
    }

    for key, value in super_dict.items():
        print(key, ">", value)


if __name__ == '__main__':
    run()

def run():
my_list = [1, “hello”, True, 4.5]
my_dict = {“firstname”: “facundo”, “lastname”:“Garcia”}

super_list = [
    {"firstname": "facundo", "lastname":"Garcia"},
    {"firstname": "jose", "lastname":"Manrique"},
    {"firstname": "Pedro", "lastname":"Hernandez"},
    {"firstname": "flor", "lastname":"Ascuna"},
    {"firstname": "Otilia", "lastname":"Panduro"},       
]

super_dict = {
    "natural_nums" : [1, 2, 3, 4, 5],
    "integer_nums" : [-1, -2, 0, 1, 2],
    "floating_nums" : [1.1, 4.5, 3.44]
}

for elemento in super_list:
    
    print(elemento)

if name==“main”:
run()

Una alternativa más 😃

for i in super_list:
    key_one, key_two = i.keys()
    value_one, value_two = i.values()
    print(f'{key_one} = {value_one} --- {key_two} = {value_two}')

mi aporte:

for item in super_list:
        print(super_list.index(item), "->", item)
    print()
def run():
    my_list = [3, "Bye", False, 7.3,]
    my_dics = {"firstName": "Antonio", "lastName": "Demarco"}

    super_list = [
        {"firstName": "Antonio", "lastName": "Demarco"},
        {"firstName": "Gonzalo", "lastName": "Perez"},
        {"firstName": "José", "lastName": "Martinez"},
        {"firstName": "Luciano", "lastName": "Demarco"}
    ]

    super_dics = {
        "naturalNumbers": [1, 2, 3, 4, 5],
        "integerNumbers": [-1, -2, 0, 1, 2],
        "floatNumbers": [4.55, 8.23, 1.98, 3.14]
    }

    for key, value in super_dics.items():
        print(key, " - ", value)

    
    for i in super_list:
        print(i["firstName"],"-",i["lastName"])

if __name__=='__main__':
    run()

Boton derecho en Visual Studio Code y “Ejecutar archivo Pyton en terminal”

Yo lo hice de dos formas mi gente 👇

def run(): 
    list = [
        {'pokemon': 'pikachu', 'type' : 'electric'},
        {'pokemon': 'torchic', 'type' : 'fire'},
        {'pokemon': 'evee', 'type' : 'normal'},
        {'pokemon': 'greninja', 'type' : 'water'}
    ]

    # Acceder a los diccionarios usando índices de las listas
    for i in list:
        (i['pokemon'], ':', i['type'])

    #Acceder a los diccionarios usando el método items
    for i in list:
        for pokemon, type in i.items():
            print(pokemon, '-', type)

Se necesita practicidad estamos anclados a una construcción ajena que en vez de facilidad se volvió tediosa y se esta robando lo poco real que alimenta la existencia

def run():
    super_list = [
        {"firstname": "Esteban", "lastname": "Jaramillo"},
        {"firstname": "Camilo", "lastname": "Zapata"},
        {"firstname": "Andres", "lastname": "Montoya"},
        {"firstname": "Brayan", "lastname": "Jimenez"},
        {"firstname": "Juan", "lastname": "Hidalgo"},
    ]

    for i in super_list:
        dic_to_list = list(i)
        print(i[dic_to_list[0]], i[dic_to_list[1]])


if __name__ == "__main__":
    run()

Mi código con For anidado 🤟

def run():
    super_list = [
        {
        'firt_name' : 'Bryan',
        'last_name' : 'Suarez'
        },
        {
        'firt_name' : 'Paula',
        'last_name' : 'Guzman'
        },
        {
        'firt_name' : 'Pepe',
        'last_name' : 'Garcia'
        },
        {
        'firt_name' : 'Jose',
        'last_name' : 'Garcias'
        },
        {
        'firt_name' : 'susana',
        'last_name' : 'Martinez'
        }
    ]
    for i in super_list:
        for key, value in i.items():
            print(f'{key} - {value}')
            

if __name__ == '__main__':
    run()

mi codigo queda asi:

def run():
my_list = [1, “Hello”, True, 4.5]
my_dict = {“firstname”: “Moises”, “lastname”: “Rivera”}

super_list = [
    {"firstname": "Iris", "lastname": "Gutierrez"},
    {"firstname": "Sara", "lastname": "Montes"},
    {"firstname": "Sebastian", "lastname": "Rivera"}
]



super_dict = {
    "naturals_nums": [1, 2, 3, 4, 5],
    "integer_nums": [-1, -2, 0, 1, 2],
    "floating_nums": [1.1, 4.5, 6.43]
}

# for key, value in super_dict.items():
#     print(key, "-", value)

for persona in super_list:
    fullname = ''
    for value in persona.values():
        fullname = fullname + " " + value
    print('Fullname: ', fullname.strip())

if name == “main”:
run()

Esta manejada por los keys (indices) asi se imprime más limpio

for item in super_list:
        print(item['firstname'], item['lastname'])

Listas y diccionarios anidados

  • Los diccionarios en Python son una estructura de datos que permite almacenar su contenido en forma de llave y valor.

  • Un diccionario en Python es una colección de elementos, donde cada uno tiene una llave key y un valor value. Los diccionarios se pueden crear con paréntesis {} separando con una coma cada par key: value.

Algunas propiedades de los diccionario en Python son las siguientes:

• Son dinámicos, pueden crecer o decrecer, se pueden añadir o eliminar elementos.

• Son indexados, los elementos del diccionario son accesibles a través del key.

• Y son anidados, un diccionario puede contener a otro diccionario en su campo value.

Código

def run():
    my_list = [1, 'hello', True, 4.5]
    my_dict = {"firstname": "Ronald", "lastname": "Mozo"}

    super_list = [
        {"firstname": "Ronald", "lastname": "Mozo"},
        {"firstname": "Miguel", "lastname": "Torres"},
        {"firstname": "Ana", "lastname": "Rodelo"},
        {"firstname": "Susana", "lastname": "Martinez"},
        {"firstname": "Jose", "lastname": "Garcia"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 0, 1, 2],
        "foating_nums": [1.1, 4.5, 6.43]
    }
    
    for value in super_list:
        print(value['firstname'], "-", value['lastname'])


    for key, value in super_dict.items():
        print(key, "-", value)


if __name__ == '__main__':
    run()
def main():
    #my_list = [1, "hello", True, 4.5]
    #my_dict = {"firtname": "Felix", "lastname": "Ramirez"}
    super_list = [
        {"firtname": "Felix", "lastname": "Ramirez"},
        {"firtname": "Daniela", "lastname": "Aguirre"},
        {"firtname": "Carlos", "lastname": "Hernandez"},
        {"firtname": "Ricardo", "lastname": "Reyes"},
    ]

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 0, 1, 2],
        "floating_nums": [1.1, 4.5, 6.43]
    }

    for key, value in super_dict.items():
        print(key, "-", value)

    for dict in super_list:
        name_full = ""
        for key, value in dict.items():
            name_full += f"{value} "
        print(name_full)

if __name__ == "__main__":
    main()```
<super_list = [
        {"firstname": "Pepo", "lastname": "Josefo", "age": "23"},
        {"firstname": "Maria", "lastname": "kimbi", "age": "17"},
        {"firstname": "nanaca", "lastname": "perso", "age": "13"},
        {"firstname": "jolio", "lastname": "jimpy", "age": "27"},
        {"firstname": "himena", "lastname": "Josofre", "age": "32"}
    ]
    for i in super_list:
        print(i) 
    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5,],
        "interger_nums":[-1, -2, 0, 1, 2,],
        "floating_nums": [1.1, 2.2, 3.3, 4.4, 5.5,],
    }

    for key, value in super_dict.items():
        print(key," " ,value)> 

Definitivamente la sintaxis de Python es la mejor 😄

def run():
    super_list = [
        {"firstname": "Mauricio", "lastname": "González"},
        {"firstname": "Juan", "lastname": "Puertas"},
        {"firstname": "Lucia", "lastname": "Torres"},
        {"firstname": "Maria","lastname": "Cruz"}
    ]

    super_dict = {
        "integer_nums": [1, 2, 3, 4, 5],
        "natural_nums": [-1, -2, 0, 3, 2],
        "floating_nums": [1.1, 2.2, 3.3, 4.4]
    }

    for value in super_list:
        for key, value in value.items():
            print(key, "-", value)

    for key, value in super_dict.items():
        print(key, "-", value)


if __name__ == "__main__":
    run()

Reto completado 😃

😮

    for x in range(len(super_list)):
        print(super_list[x])
for usuario in super_list:
    print((usuario["firstname"],usuario["last_name"]))

Reto solucionado!!!

<code> def run():
    my_list = [1, 2, "camila", False, 4.12]
    my_dict = {"Firstname": "Alejandro", "lastname": "Ching", "Secondlastname": "Franco"}

    super_list = [
        {"Firstname": "Alejandro", "lastname": "Ching", "Secondlastname": "Franco"},
        {"Firstname": "Camila", "lastname": "Gomez", "Secondlastname": "Gomez"},
        {"Firstname": "Meili", "lastname": "Ching", "Secondlastname": "Franco"},
    ]

    mysuper_dict = {
        "family_members": ["Meili", "Sandra", "marlon"],
        "favourite_food": ["Perros", "Hamburguesa", "pizza"],
        "family_pets": [1, 2, 4, 5]
    }
#TODO SE SEPARA POR COMAS, LOS VALORES, LAS LISTAS, Y LOS DICCIONARIOS (NO OLVIDAR COMAS)

    for key, value in mysuper_dict.items():
        print(key, "-", value) #PARA LA LLAVE Y EL VALOR EN EL SUPERDICT, IMPRIMIMOS LA LLAVE Y "-" QUE FUNCIONA COMO ESPACIO ENTRE LLAVE Y VALOR.



    for values in super_list:
        for key, value in values.items():
            print(value, end=' ')
            print ('', sep='\n')

Comparto mis apuntes de la clase:

Comparto mi solución para el recorrido de la lista de diccionarios:

FORMA 1

  • Usando directamente las claves como índices (siempre son los mismos)

FORMA 2

  • Usando directamente los valores (diccionario.values) e imprimiendo sin salto de línea hasta no terminar cada persona.

Guía para iniciar un proyecto de Python como profesional 🐍

  1. Crear la carpeta donde alojaremos el proyecto usando el comando
    mkdir nombre_carpeta_proyecto
  2. Inicializarlo como un repositorio de Git con el comando git init
  3. Creamos un nuevo entorno virtual del proyecto → py -m venv venv
  4. Inicializa el entorno virtual del proyecto con el comando (alias) → avenv
  5. Dentro del proyecto creamos el archivo .gitignore
  6. Agregar la carpeta venv al archivo .gitignore de la siguiente forma venv/
(venv)jhonftb3@JFTB:/mnt/c/Users/user/Documents/codepy/curso-python$ python3 lists_and_dicts.py
Facundo - García
Miguel - Rodriguez
Pablo - Trinidad

def run():
my_list = [1, “Hello”, True, 4.5]
my_dict = {“firstname”: “Facundo”, “lastname”: “García”}

super_list = [
    {"firstname": "Facundo", "lastname": "García"},
    {"firstname": "Miguel", "lastname": "Rodriguez"},
    {"firstname": "Pablo", "lastname": "Trinidad"},
    {"firstname": "Susana", "lastname": "Martinez"},
    {"firstname": "José", "lastname": "Fernandez"},
]

super_dict = {
    "natural_nums": [1, 2, 3, 4, 5],
    "integer_nums": [-1, -2, 3, 0, 1],
    "floating_nums": [1.1, 4.55, 6.43],
}

#for key, value in super_dict.items():
   # print(key, ">", value)
for i in super_list:
    print(i["firstname"], "-", i["lastname"])

if name == ‘main’:
run()

<code> 

Yo lo hize de dos formas

  1. utilizando el ciclo for:

  2. Utilizando el metodo y funcion join y map:

la funcion map realiza la tarea del bucle y el metodo join une los elementos de la lista, con el separador \n imprime cada diccionario en una linea nueva

Hola, estos fueron mis codigos desarrollados:

# Imprimit los diccionarios dentro de la lista.
    for i in super_list:
        dict_element = i
        keys, values = dict_element.items()
        print(f'* {keys} - {values}')

    # Imprimir los diccionarios dentro de las listas.
    for i in super_list:
        for key, value in i.items():
            print(f'* {key} - {value}')
for diccionary in my_super_list:
    for key, value in diccionary.items():
        print(key,"-",value)

Que genial, yo despues de terminar el curso basico de python, me dedique a hacer un programa que al ingresar el score de jugadores tras una partida de Wild Rift, me diera unas estadisticas generales de desempeño, por lo que obvié la existencia del anidamiento entre diccionarios y listas, usando ambas, les dejo el enlace al notebook para que lo vean y hagan correr si es que gustan
DISCLAIMER: aun no conocia el zen de python cuando hice este codigo, asi que no esperen codigo hermoso xD
https://colab.research.google.com/drive/1NT53cl4dKD5MLnm94kX9Lp9tiQ6h5Fh4?usp=sharing

    for values in super_list :
        for key, value in values.items():
            print(key, ": ", value)

Serían como
objeto = (diccionario) y
arreglo = (lista)

**RESUMEN
**

Las listas se pueden contener diccionarios

    super_list = [
        {"firstname": "Jorge", "lastname": "Martínez"},
        {"firstname": "Benito", "lastname": "García"},
        {"firstname": "Pedro", "lastname": "Serrano"},
        {"firstname": "Joel", "lastname": "Gonzalez"}
    ]

Y los diccionarios pueden contener listas

    super_dict = {
        "natural_nums": [1, 2, 3, 4, 5],
        "integer_nums": [-1, -2, 0, 1, 2],
        "floating_nums": [1.1, 4.5, 6.43]
    }

Asi imprimi los valores

<
for i in super_list:
        for key, value in i.items():
            print (key, '-->', value)
> 

Código para imprimir la lista:

for item in super_list:
        print(item['firstname'], '-', item['lastname'])

Ejercicio

def run():
    my_list=[1, "Hello", True, 4.5]
    my_dict={"firstname":"Roger","lastname":"Cansaya"}
    
    super_list = [
        {"firstname":"Facundo","lastname":"Garcia"},
        {"firstname":"Miguelo","lastname":"Torres"},
        {"firstname":"Pepe","lastname":"Rodelo"},
        {"firstname":"Susana","lastname":"Martinez"},
        {"firstname":"Jose","lastname":"Garcia"}
                ]
    
    super_dict={
        "natural_num":[1, 2, 3, 4, 5],
        "integer_nums":[-1,-2, 0,-1, 2],
        "floating_nums": [1.1, 4.5, 6.43]
    }
    #impriminedo super_dict
    for key,value in super_dict.items():
        print(key, "-",value)
    #Imprimiendo super_list
    for element in super_list:
        print(element["firstname"], " ",element["lastname"])


if __name__== '__main__':
    run()

Imprimir super lista:

<code> 
    super_list = [
        {"first_name":"Mauricio","last_name":"Andrade"},
        {"first_name":"Valentina","last_name":"Prieto"},
        {"first_name":"Juan","last_name":"Varon"},
        {"first_name":"Facundo","last_name":"Vargas"},
    ]

    for i in super_list:
        for key, value in i.items():
            print(f'{key} - {value}')

Los diccionarios se generan en el for con nombre de variable x y luego se puede acceder a estos con normalidad

<for x in super_list:
        print(x['firstname'], " ", x['lastname'])> 

Mi aporte c:

    for dict in super_list:
        print(dict["firstname"] + " " + dict["lastname"])
    for key, value in super_dict.items():
        print(key,"-",value)

    for i in super_list:
        for key,values in i.items():
            print(key, ":",values)

I’m learning … Kepp going, too. 😉

Este codigo lo hice para imprimir la lista

  #imprimir la lista

    for cont in range(0,len(super_lista)):
        print(super_lista[cont])

Un poco complicado, pero averiguando todo se sabe (get, values, key and item)

FACUNDO NOS PIDE SOLO LOS VALORES.