From 67433af802f246921af32ba54157401cfed79496 Mon Sep 17 00:00:00 2001 From: Erick Jhordan Reategui Rojas <reateguie@jupyterMiLAB> Date: Mon, 8 Feb 2021 23:14:15 -0500 Subject: [PATCH] Raw work --- Pascal.png | Bin 0 -> 21633 bytes ejercicio1.ipynb | 139 ++++++++++++++ ejercicio2.ipynb | 201 +++++++++++++++++++++ ejercicio3.ipynb | 457 +++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 797 insertions(+) create mode 100644 Pascal.png create mode 100644 ejercicio1.ipynb create mode 100644 ejercicio2.ipynb create mode 100644 ejercicio3.ipynb diff --git a/Pascal.png b/Pascal.png new file mode 100644 index 0000000000000000000000000000000000000000..f19d30625408cdf14839a10dfae55a0a1a74ba62 GIT binary patch literal 21633 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 literal 0 HcmV?d00001 diff --git a/ejercicio1.ipynb b/ejercicio1.ipynb new file mode 100644 index 0000000..68fb06c --- /dev/null +++ b/ejercicio1.ipynb @@ -0,0 +1,139 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 1 Ejercicio No. 1 - Lista de palabras\n", + "• Escriba un programa en python que acepte una lista de palabras separadas por guiones, e\n", + "imprima de vuelta las mismas palabras, sin repetición y nuevamente separadas por guiones,\n", + "después de ordenarlas alfabéticamente.<br/>\n", + "Ejemplo de entrada: naranja-avión-melodÃa-tupla-avión<br/>\n", + "Salida esperada: avión-melodÃa-naranja-tupla" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "def ej1(sample):\n", + " s1 = sample.split(\"-\")\n", + " s1.sort()\n", + " s2 = set(s1)\n", + " return \"-\".join(s2) " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ingrese secuencia de palabras separadas por comas: \n", + "naranja-avión-melodÃa-tupla-avión\n" + ] + } + ], + "source": [ + "sample = (input(\"Ingrese secuencia de palabras separadas por comas: \\n\"))\n", + "# print(\"Resultado: \\n\", ej1(sample))" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['naranja', 'avión', 'melodÃa', 'tupla', 'avión']" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "s1 = sample.split(\"-\")\n", + "s1" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'avión', 'melodÃa', 'naranja', 'tupla'}" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "s2 = set(s1)\n", + "s2" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['avión', 'melodÃa', 'naranja', 'tupla']" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "list_of_strings = [str(s) for s in s2]\n", + "sorted(list_of_strings)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/ejercicio2.ipynb b/ejercicio2.ipynb new file mode 100644 index 0000000..477265d --- /dev/null +++ b/ejercicio2.ipynb @@ -0,0 +1,201 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 2 Ejercicio No. 2 - Triángulo de Pascal\n", + "• Escriba una rutina en python que reciba como entrada un número entero, n, e imprima los\n", + "números en la n-ésima fila del triángulo de Pascal. El programa debe verificar si el número\n", + "n es entero, o arrojar un mensaje informando que ha habido un error del usuario en caso\n", + "contrario.<br/>\n", + "• Modifique la rutina anterior para que reciba un número variable de argumentos: n1, n2, n3,…\n", + "y retorne una lista cuyo primer elemento es una lista conteniendo los números en la fila n1\n", + "del triángulo de Pascal, el segundo elemento una lista con los números en la fila n2, y asÃ\n", + "sucesivamente." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ingrese n para obtener la n-ésima fila del\n", + " triángulo de Pascal: 5\n" + ] + } + ], + "source": [ + "n = (input(\"Ingrese n para obtener la n-ésima fila del\\n triángulo de Pascal: \"))\n", + "n = int(n)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<img src=\"Pascal.png\" width=\"500\"/>" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 4, 6, 4, 1]\n" + ] + } + ], + "source": [ + "Pasc = []\n", + "if type(n)==int:\n", + " for k in np.arange(n):\n", + " if k==0:\n", + " Pasc.append([1])\n", + " elif k==1:\n", + " Pasc.append([1,1])\n", + " else:\n", + " Pasc.append([])\n", + " for j in np.arange(k+1):\n", + " if j==0:\n", + " Pasc[k].append(1)\n", + " elif j==k:\n", + " Pasc[k].append(1)\n", + " else:\n", + " Pasc[k].append(Pasc[k-1][j-1]+Pasc[k-1][j])\n", + " print(Pasc[-1])\n", + "else:\n", + " print(\"Ha habido un error, ingrese un número entero\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Rutina modificada" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Ingrese un número variable de argumentos separados por comas: 5, 7, 8\n" + ] + } + ], + "source": [ + "Rpta=\"Si\"\n", + "while Rpta==\"Si\":\n", + " lista = (input(\"Ingrese un número variable de argumentos separados por comas: \"))\n", + " lista = lista.split(\", \")\n", + " lista1 = [x for x in lista if x.isdigit()]\n", + " lista1 = [int(x) for x in lista1]\n", + " if len(lista)!=len(lista1):\n", + " Rpta = (input(\"Ingresó uno o más números no enteros,\\n desea intentar de nuevo? (Si/No): \"))\n", + " else:\n", + " break" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[5, 7, 8]" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "lista1" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Para l= 5 se tiene [1, 4, 6, 4, 1]\n", + "Para l= 7 se tiene [1, 6, 15, 20, 15, 6, 1]\n", + "Para l= 8 se tiene [1, 7, 21, 35, 35, 21, 7, 1]\n" + ] + } + ], + "source": [ + "nmax = np.argmax(lista1)\n", + "n = lista1[nmax]\n", + "Pasc = []\n", + "\n", + "for k in np.arange(n):\n", + " if k==0:\n", + " Pasc.append([1])\n", + " elif k==1:\n", + " Pasc.append([1,1])\n", + " else:\n", + " Pasc.append([])\n", + " for j in np.arange(k+1):\n", + " if j==0:\n", + " Pasc[k].append(1)\n", + " elif j==k:\n", + " Pasc[k].append(1)\n", + " else:\n", + " Pasc[k].append(Pasc[k-1][j-1]+Pasc[k-1][j])\n", + "for l in lista1:\n", + " print(\"Para l=\",l,\" se tiene\", Pasc[l-1])" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/ejercicio3.ipynb b/ejercicio3.ipynb new file mode 100644 index 0000000..5757edd --- /dev/null +++ b/ejercicio3.ipynb @@ -0,0 +1,457 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 3 Ejercicio No. 3 - Amigos congueros\n", + "• Entre en contacto con 10 estudiantes del curso de datos y 2 profesores o personal de soporte\n", + "de LaConga, uno del curso de datos y otro de afuera, y consulte su nombre completo, su\n", + "nombre de usuario en mattermost, edad, pais de origen, ciudad donde residen, su especialidad\n", + "cientÃfica, nombre del instituto en que estudian/laboran, y un hobbie o afición.<br/>\n", + "• Cree un diccionario llamado “compasâ€, donde la llave sea el nombre de usuario en mattermost,\n", + "y si depliego el valor almacenado, por ejemplo en compas[“juan-pinedaâ€], lo que obtengo es\n", + "a la vez otro diccionario, con las llaves “nombreâ€, “apellidoâ€, “paÃsâ€, “residenciaâ€, “edadâ€,\n", + "“instituciónâ€, “hobbieâ€.<br/>\n", + "• Cree una función que reciba como entrada el diccionario y un paÃs de origen, y retorne las\n", + "informaciones completas de todas las personas de ese paÃs, tabuladas en una forma fácil de\n", + "entender. -Busque una forma de calcular, a partir del diccionario, el promedio de edad de\n", + "todas las personas en él, y una forma de mostrar todas las instituciones (sin repetición)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "compas = {\n", + " 'sadeddins' : { 'nombre': 'Siria' , 'apellido': 'Sadeddin' ,\n", + " 'paÃs': 'Venezuela' , 'residencia': 'Barranquilla, Colombia' ,\n", + " 'edad': 30 , 'institución': 'Universidad Simón BolÃvar' ,\n", + " 'hobbie': 'Data science' },\n", + " \n", + " 'ladinoj' : { 'nombre': 'Jose' , 'apellido': 'Ladino' ,\n", + " 'paÃs': 'Colombia' , 'residencia': 'Bogotá, Colombia' ,\n", + " 'edad': 24 , 'institución': 'Universidad Nacional de Colombia' ,\n", + " 'hobbie': 'Skate, ciclismo, guitarra eléctrica' },\n", + " \n", + " 'grisalesj' : { 'nombre': 'Jennifer' , 'apellido': 'Grisales' ,\n", + " 'paÃs': 'Colombia' , 'residencia': 'Bucaramanga, Colombia' ,\n", + " 'edad': 27 , 'institución': 'Universidad Industrial de Santander' ,\n", + " 'hobbie': 'Rugby'},\n", + " \n", + " 'andreatugores' : { 'nombre': 'Andrea' , 'apellido': 'Tugores' ,\n", + " 'paÃs': 'Venezuela' , 'residencia': 'Caracas, Venezuela' ,\n", + " 'edad': 24 , 'institución': 'Universidad Central de Venezuela' ,\n", + " 'hobbie': 'Tennis'},\n", + " \n", + " 'leonl' : { 'nombre': 'Luis' , 'apellido': 'León' ,\n", + " 'paÃs': 'Perú' , 'residencia': 'Callao, Perú' ,\n", + " 'edad': 22 , 'institución': 'Universidad Nacional Mayor de San Marcos' ,\n", + " 'hobbie': 'Escuchar música, tocar guitarra'},\n", + " \n", + " 'teofilo' : { 'nombre': 'Teófilo' , 'apellido': 'Vargas' ,\n", + " 'paÃs': 'Perú' , 'residencia': 'Lima, Perú' ,\n", + " 'edad': 54 , 'institución': 'Universidad Nacional Mayor de San Marcos' ,\n", + " 'hobbie': 'Wing Chun Kuen'},\n", + " \n", + " 'serranoj' : { 'nombre': 'José' , 'apellido': 'Serrano' ,\n", + " 'paÃs': 'Perú' , 'residencia': 'Lima, Perú' ,\n", + " 'edad': 27 , 'institución': 'Universidad Nacional de IngenierÃa' ,\n", + " 'hobbie': 'Videojuegos'},\n", + " \n", + " 'vinascor' : { 'nombre': 'Rafael' , 'apellido': 'Vinasco' ,\n", + " 'paÃs': 'Colombia' , 'residencia': 'Bogotá, Colombia' ,\n", + " 'edad': 26 , 'institución': 'Universidad nacional de Colombia' ,\n", + " 'hobbie': 'Ajedrez, Nadar'},\n", + " 'omarasto' : { 'nombre': 'Omar' , 'apellido': 'Asto' ,\n", + " 'paÃs': 'Perú' , 'residencia': 'Lima, Perú' ,\n", + " 'edad': 25 , 'institución': 'Universidad Nacional de IngenierÃa' ,\n", + " 'hobbie': 'Leer periódico'},\n", + " 'alexis.tremolada' : { 'nombre': 'Alexis' , 'apellido': 'Tremolada' ,\n", + " 'paÃs': 'Perú' , 'residencia': 'Lima, Perú' ,\n", + " 'edad': 23 , 'institución': 'Universidad Nacional Mayor de San Marcos' ,\n", + " 'hobbie': 'Leer, jugar videojuegos, ver series'}\n", + " \n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['sadeddins', 'ladinoj', 'grisalesj', 'andreatugores', 'leonl', 'teofilo', 'serranoj', 'vinascor', 'omarasto', 'alexis.tremolada'])" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "compas.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_items([('sadeddins', {'nombre': 'Siria', 'apellido': 'Sadeddin', 'paÃs': 'Venezuela', 'residencia': 'Barranquilla, Colombia', 'edad': 30, 'institución': 'Universidad Simón BolÃvar', 'hobbie': 'Data science'}), ('ladinoj', {'nombre': 'Jose', 'apellido': 'Ladino', 'paÃs': 'Colombia', 'residencia': 'Bogotá, Colombia', 'edad': 24, 'institución': 'Universidad Nacional de Colombia', 'hobbie': 'Skate, ciclismo, guitarra eléctrica'}), ('grisalesj', {'nombre': 'Jennifer', 'apellido': 'Grisales', 'paÃs': 'Colombia', 'residencia': 'Bucaramanga, Colombia', 'edad': 27, 'institución': 'Universidad Industrial de Santander', 'hobbie': 'Rugby'}), ('andreatugores', {'nombre': 'Andrea', 'apellido': 'Tugores', 'paÃs': 'Venezuela', 'residencia': 'Caracas, Venezuela', 'edad': 24, 'institución': 'Universidad Central de Venezuela', 'hobbie': 'Tennis'}), ('leonl', {'nombre': 'Luis', 'apellido': 'León', 'paÃs': 'Perú', 'residencia': 'Callao, Perú', 'edad': 22, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Escuchar música, tocar guitarra'}), ('teofilo', {'nombre': 'Teófilo', 'apellido': 'Vargas', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 54, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Wing Chun Kuen'}), ('serranoj', {'nombre': 'José', 'apellido': 'Serrano', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 27, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Videojuegos'}), ('vinascor', {'nombre': 'Rafael', 'apellido': 'Vinasco', 'paÃs': 'Colombia', 'residencia': 'Bogotá, Colombia', 'edad': 26, 'institución': 'Universidad nacional de Colombia', 'hobbie': 'Ajedrez, Nadar'}), ('omarasto', {'nombre': 'Omar', 'apellido': 'Asto', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 25, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Leer periódico'}), ('alexis.tremolada', {'nombre': 'Alexis', 'apellido': 'Tremolada', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 23, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Leer, jugar videojuegos, ver series'})])" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "compas.items()" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['nombre', 'apellido', 'paÃs', 'residencia', 'edad', 'institución', 'hobbie'])" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "valor.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sadeddins : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "ladinoj : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "grisalesj : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "andreatugores : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "leonl : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "teofilo : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "serranoj : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "vinascor : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "omarasto : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n", + "alexis.tremolada : nombre, apellido, paÃs, residencia, edad, institución, hobbie\n" + ] + } + ], + "source": [ + "for clave, valor in compas.items():\n", + " # La clave serÃa por ejemplo \"frutas\", el valor serÃa en este caso \n", + " # otro diccionario. Con `valor.keys()` sacamos la lista\n", + " # de claves de este otro diccionario, que serÃan los nombres de las frutas\n", + " elementos = \", \".join(valor.keys())\n", + " print(clave, \":\", elementos)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'nombre': 'Omar', 'apellido': 'Asto', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 25, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Leer periódico'}\n" + ] + } + ], + "source": [ + "if compas[\"omarasto\"]['paÃs'] == \"Perú\":\n", + " print(compas[\"omarasto\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Cree una función que reciba como entrada el diccionario y un paÃs de origen, \n", + "y retorne las informaciones completas de todas las personas de ese paÃs, tabuladas en una forma fácil de entender." + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "leonl : {'nombre': 'Luis', 'apellido': 'León', 'paÃs': 'Perú', 'residencia': 'Callao, Perú', 'edad': 22, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Escuchar música, tocar guitarra'} \n", + "\n", + "teofilo : {'nombre': 'Teófilo', 'apellido': 'Vargas', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 54, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Wing Chun Kuen'} \n", + "\n", + "serranoj : {'nombre': 'José', 'apellido': 'Serrano', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 27, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Videojuegos'} \n", + "\n", + "omarasto : {'nombre': 'Omar', 'apellido': 'Asto', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 25, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Leer periódico'} \n", + "\n", + "alexis.tremolada : {'nombre': 'Alexis', 'apellido': 'Tremolada', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 23, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Leer, jugar videojuegos, ver series'} \n", + "\n" + ] + } + ], + "source": [ + "for clave, valor in compas.items():\n", + "# print(clave)\n", + " if compas[clave]['paÃs'] == \"Perú\":\n", + " print(clave, \":\", compas[clave],\"\\n\")" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [], + "source": [ + "def f1(dicc, pais):\n", + " for clave, valor in compas.items():\n", + " if compas[clave]['paÃs'] == pais:\n", + " print(clave, \":\", compas[clave],\"\\n\")" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "leonl : {'nombre': 'Luis', 'apellido': 'León', 'paÃs': 'Perú', 'residencia': 'Callao, Perú', 'edad': 22, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Escuchar música, tocar guitarra'} \n", + "\n", + "teofilo : {'nombre': 'Teófilo', 'apellido': 'Vargas', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 54, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Wing Chun Kuen'} \n", + "\n", + "serranoj : {'nombre': 'José', 'apellido': 'Serrano', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 27, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Videojuegos'} \n", + "\n", + "omarasto : {'nombre': 'Omar', 'apellido': 'Asto', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 25, 'institución': 'Universidad Nacional de IngenierÃa', 'hobbie': 'Leer periódico'} \n", + "\n", + "alexis.tremolada : {'nombre': 'Alexis', 'apellido': 'Tremolada', 'paÃs': 'Perú', 'residencia': 'Lima, Perú', 'edad': 23, 'institución': 'Universidad Nacional Mayor de San Marcos', 'hobbie': 'Leer, jugar videojuegos, ver series'} \n", + "\n" + ] + } + ], + "source": [ + "f1(compas, \"Perú\")" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ladinoj : {'nombre': 'Jose', 'apellido': 'Ladino', 'paÃs': 'Colombia', 'residencia': 'Bogotá, Colombia', 'edad': 24, 'institución': 'Universidad Nacional de Colombia', 'hobbie': 'Skate, ciclismo, guitarra eléctrica'} \n", + "\n", + "grisalesj : {'nombre': 'Jennifer', 'apellido': 'Grisales', 'paÃs': 'Colombia', 'residencia': 'Bucaramanga, Colombia', 'edad': 27, 'institución': 'Universidad Industrial de Santander', 'hobbie': 'Rugby'} \n", + "\n", + "vinascor : {'nombre': 'Rafael', 'apellido': 'Vinasco', 'paÃs': 'Colombia', 'residencia': 'Bogotá, Colombia', 'edad': 26, 'institución': 'Universidad nacional de Colombia', 'hobbie': 'Ajedrez, Nadar'} \n", + "\n" + ] + } + ], + "source": [ + "f1(compas, \"Colombia\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Busque una forma de calcular, a partir del diccionario, el promedio de edad de todas las personas en él, \n", + "y una forma de mostrar todas las instituciones (sin repetición)" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "30\n", + "24\n", + "27\n", + "24\n", + "22\n", + "54\n", + "27\n", + "26\n", + "25\n", + "23\n" + ] + } + ], + "source": [ + "edades = []\n", + "for clave, valor in compas.items():\n", + " edades.append(compas[clave]['edad'])\n", + " print(compas[clave]['edad'])" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "28.2" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "np.mean(edades)" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Universidad Simón BolÃvar\n", + "Universidad Nacional de Colombia\n", + "Universidad Industrial de Santander\n", + "Universidad Central de Venezuela\n", + "Universidad Nacional Mayor de San Marcos\n", + "Universidad Nacional Mayor de San Marcos\n", + "Universidad Nacional de IngenierÃa\n", + "Universidad nacional de Colombia\n", + "Universidad Nacional de IngenierÃa\n", + "Universidad Nacional Mayor de San Marcos\n" + ] + } + ], + "source": [ + "instituciones = []\n", + "for clave, valor in compas.items():\n", + " instituciones.append(compas[clave]['institución'])\n", + " print(compas[clave]['institución'])" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['Universidad Simón BolÃvar',\n", + " 'Universidad Nacional de Colombia',\n", + " 'Universidad Industrial de Santander',\n", + " 'Universidad Central de Venezuela',\n", + " 'Universidad Nacional Mayor de San Marcos',\n", + " 'Universidad Nacional Mayor de San Marcos',\n", + " 'Universidad Nacional de IngenierÃa',\n", + " 'Universidad nacional de Colombia',\n", + " 'Universidad Nacional de IngenierÃa',\n", + " 'Universidad Nacional Mayor de San Marcos']" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "instituciones" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'Universidad Central de Venezuela',\n", + " 'Universidad Industrial de Santander',\n", + " 'Universidad Nacional Mayor de San Marcos',\n", + " 'Universidad Nacional de Colombia',\n", + " 'Universidad Nacional de IngenierÃa',\n", + " 'Universidad Simón BolÃvar',\n", + " 'Universidad nacional de Colombia'}" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "set(instituciones)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} -- GitLab