Soy Alfonso Navas (@navasa) y en este cuaderno presentaré mi solución para el ejercicio No. 3 - Amigos congueros.
Creamos un diccionario para cada persona.
acerot = {
'nombre' : 'Tatiana',
'apellido' : 'Cuellar',
'país' : 'Colombia',
'residencia' : 'Bogotá',
'edad' : 23,
'institución' : 'UNAL',
'hobbie' : 'Anime'
}
andreatugores = {
'nombre' : 'Andrea',
'apellido' : 'Tugores',
'país' : 'Venezuela',
'residencia' : 'Caracas',
'edad' : 24,
'institución' : 'UCV',
'hobbie' : 'Tennis'
}
bermudezj = {
'nombre' : 'Jesús',
'apellido' : 'Bermudez',
'país' : 'Colombia',
'residencia' : 'Bogotá',
'edad' : 25,
'institución' : 'UNAL',
'hobbie' : 'Senderismo'
}
carrilloj = {
'nombre' : 'Juan',
'apellido' : 'Carrillo',
'país' : 'Colombia',
'residencia' : 'Bogotá',
'edad' : 25,
'institución' : 'UNAL',
'hobbie' : 'Baloncesto'
}
floreza = {
'nombre' : 'Andrés',
'apellido' : 'Flórez',
'país' : 'Colombia',
'residencia' : 'Cali',
'edad' : 22,
'institución' : 'Univalle',
'hobbie' : 'Movement Culture'
}
ramosm = {
'nombre' : 'María',
'apellido' : 'Ramos',
'país' : 'Venezuela',
'residencia' : 'Mérida',
'edad' : 23,
'institución' : 'ULA',
'hobbie' : 'Escribir'
}
hernandezj = {
'nombre' : 'Juan',
'apellido' : 'Hernandez',
'país' : 'Colombia',
'residencia' : 'Bogotá',
'edad' : 24,
'institución' : 'UNAL',
'hobbie' : 'Lectura'
}
vivasm = {
'nombre' : 'Mariana',
'apellido' : 'Vivas',
'país' : 'Venezuela',
'residencia' : 'Caracas',
'edad' : 23,
'institución' : 'UCV',
'hobbie' : 'Ballet'
}
martinezj = {
'nombre' : 'Jocabed',
'apellido' : 'Martinez',
'país' : 'Venezuela',
'residencia' : 'Caracas',
'edad' : 22,
'institución' : 'UCV',
'hobbie' : 'Música'
}
ramosd = {
'nombre' : 'David',
'apellido' : 'Ramos',
'país' : 'Colombia',
'residencia' : 'Bucaramanga',
'edad' : 24,
'institución' : 'UIS',
'hobbie' : 'Guitarra'
}
arturos = {
'nombre' : 'Arturo',
'apellido' : 'Sanchez',
'país' : 'Venezuela',
'residencia' : 'Ginebra',
'edad' : 34,
'institución' : 'LAPP',
'hobbie' : 'Ciclismo'
}
juan_pineda = {
'nombre' : 'Juan',
'apellido' : 'Basto',
'país' : 'Colombia',
'residencia' : 'Bucaramanga',
'edad' : 37,
'institución' : 'UIS',
'hobbie' : 'Divulgación científica'
}
Creamos el diccionario compas
, el cual contiene como elementos a todos los diccionarios creados en la primera parte, donde la llave de cada uno está determinada por el usuario de mattermost de la persona a la cual corresponden.
compas = {
'acerot' : acerot,
'andreatugores' : andreatugores,
'bermudezj' : bermudezj,
'carrilloj' : carrilloj,
'floreza' : floreza,
'ramosm' : ramosm,
'hernandezj' : hernandezj,
'vivasm' : vivasm,
'martinezj' : martinezj,
'ramosd' : ramosd,
'arturos' : arturos,
'juan-pineda' : juan_pineda
}
Ahora, creamos una función que reciba como entrada el diccionario compas
y un país de origen, y retorne las informaciones completas de todas las personas de ese país trabuladas en una forma fácil de entender.
def informacion_pais(diccionario, pais):
# Imprimimos el encabezado de nuestra tabla
print('{:^15}{:^15}{:^15}{:^15}{:^15}{:^15}{:^18}'.format('Nombre', 'Apellido', 'País', 'Residencia', 'Edad',
'Institución', 'Hobbie'))
for i in diccionario:
usuario = diccionario[i]
if (usuario['país'] == pais): #Para cada usuario, verificamos si su pais corresponde al del argumento
# Si es así, imprimimos los datos del usuario en formato de tabla
print('{:^15}{:^15}{:^15}{:^15}{:^15}{:^15}{:^18}'.format(usuario['nombre'], usuario['apellido'],
usuario['país'], usuario['residencia'],
usuario['edad'], usuario['institución'],
usuario['hobbie']))
informacion_pais(compas, 'Venezuela')
Nombre Apellido País Residencia Edad Institución Hobbie Andrea Tugores Venezuela Caracas 24 UCV Tennis María Ramos Venezuela Mérida 23 ULA Escribir Mariana Vivas Venezuela Caracas 23 UCV Ballet Jocabed Martinez Venezuela Caracas 22 UCV Música Arturo Sanchez Venezuela Ginebra 34 LAPP Ciclismo
informacion_pais(compas, 'Colombia')
Nombre Apellido País Residencia Edad Institución Hobbie Tatiana Cuellar Colombia Bogotá 23 UNAL Anime Jesús Bermudez Colombia Bogotá 25 UNAL Senderismo Juan Carrillo Colombia Bogotá 25 UNAL Baloncesto Andrés Flórez Colombia Cali 22 Univalle Movement Culture Juan Hernandez Colombia Bogotá 24 UNAL Lectura David Ramos Colombia Bucaramanga 24 UIS Guitarra Juan Basto Colombia Bucaramanga 37 UIS Divulgación científica
En este punto, calulamos el promedio de todas las edades de las personas en el diccionario compas
.
diccionario = compas
# Iniciamos una lista para almacenar las edades de los miembros del diccionario compas
edades = []
for i in diccionario:
usuario = diccionario[i]
edades.append(usuario['edad'])
# A partir de la lista creada, calculamos el promedio
promedio = sum(edades)/len(edades)
promedio = round(promedio, 2)
# Imprimimos el resultado
print ('el promedio de edad es ' + str(promedio))
el promedio de edad es 25.5
Por último, mostramos las instituciones de las personas en el diccionario compas
(sin repetición).
diccionario = compas
# En este string guardaremos los nombres
nombres = ''
for i in diccionario:
usuario = diccionario[i]
institucion = usuario['institución']
if not(institucion in nombres): #Si un nombre no se encuentra en el string nombres, lo adicionamos
nombres += institucion + ' '
print('Los nombres de las instituciones de los integrantes del diccionario compas son: ' + nombres)
Los nombres de las instituciones de los integrantes del diccionario compas son: UNAL UCV Univalle ULA UIS LAPP