"**Breve descripción**: Se pide escribir un código en python que permita ingresar una lista de palabras separadas entre ellas por guiones, y al correr el código devuelva las mismas palabras, sin repetición, separadas por guiones y ordenadas alfabéticamente. \n",
"\n",
"\n",
" \n",
"\n",
"\n",
"**Paso 1**. Comenzamos ingresando la lista de palabras separadas por guiones.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Lista de Palabras: Naranja-Manzana-Zanahoria-Naranja-Limón-Arándano\n"
]
}
],
"source": [
"ingreso = input(\"Lista de Palabras: \")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
" \n",
"\n",
"**Paso 2**. Identificamos el elemento separador de palabras, procedemos a dividir (split) la cadena en cada guión y crear una lista con dichos elementos por separado.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La lista es: ['Naranja', 'Manzana', 'Zanahoria', 'Naranja', 'Limón', 'Arándano']\n"
]
}
],
"source": [
"separador = \"-\"\n",
"lista = ingreso.split(separador)\n",
"print('La lista es: ',lista)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
" \n",
"\n",
"**Paso 3**. Creamos un conjunto con los elementos en la lista con el fin que se eliminen los repetidos.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"El conjunto sin repetición es: {'Zanahoria', 'Manzana', 'Naranja', 'Arándano', 'Limón'}\n"
]
}
],
"source": [
"conjunto = set(lista)\n",
"print('El conjunto sin repetición es: ',conjunto)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Puede observarse que se han eliminado los elementos repetidos.\n",
"\n",
" \n",
"\n",
"**Paso 4**. Volvemos a crear una lista, pero esta vez sin elementos repetidos.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"La lista sin elementos repetidos es: ['Zanahoria', 'Manzana', 'Naranja', 'Arándano', 'Limón']\n"
]
}
],
"source": [
"lista_ordenada = list(conjunto)\n",
"print('La lista sin elementos repetidos es: ',lista_ordenada)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
" \n",
"\n",
"**Paso 5**. Por último, unimos cada elemento de la lista sin repetición con un guión y, a su vez, los ordenamos alfabéticamente.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"El resultado final es: Arándano-Limón-Manzana-Naranja-Zanahoria\n"
]
}
],
"source": [
"Resultado = '-'.join(sorted(lista_ordenada))\n",
"print('El resultado final es: ',Resultado)"
]
}
],
"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
}
%% Cell type:markdown id: tags:
# Ejercicio Nº 1: Lista de Palabras
**Autor**: Nicolás Fernández Cinquepalmi
**Breve descripción**: Se pide escribir un código en python que permita ingresar una lista de palabras separadas entre ellas por guiones, y al correr el código devuelva las mismas palabras, sin repetición, separadas por guiones y ordenadas alfabéticamente.
**Paso 1**. Comenzamos ingresando la lista de palabras separadas por guiones.
%% Cell type:code id: tags:
``` python
ingreso=input("Lista de Palabras: ")
```
%% Output
Lista de Palabras: Naranja-Manzana-Zanahoria-Naranja-Limón-Arándano
%% Cell type:markdown id: tags:
**Paso 2**. Identificamos el elemento separador de palabras, procedemos a dividir (split) la cadena en cada guión y crear una lista con dichos elementos por separado.
%% Cell type:code id: tags:
``` python
separador="-"
lista=ingreso.split(separador)
print('La lista es: ',lista)
```
%% Output
La lista es: ['Naranja', 'Manzana', 'Zanahoria', 'Naranja', 'Limón', 'Arándano']
%% Cell type:markdown id: tags:
**Paso 3**. Creamos un conjunto con los elementos en la lista con el fin que se eliminen los repetidos.
%% Cell type:code id: tags:
``` python
conjunto=set(lista)
print('El conjunto sin repetición es: ',conjunto)
```
%% Output
El conjunto sin repetición es: {'Zanahoria', 'Manzana', 'Naranja', 'Arándano', 'Limón'}
%% Cell type:markdown id: tags:
Puede observarse que se han eliminado los elementos repetidos.
**Paso 4**. Volvemos a crear una lista, pero esta vez sin elementos repetidos.
%% Cell type:code id: tags:
``` python
lista_ordenada=list(conjunto)
print('La lista sin elementos repetidos es: ',lista_ordenada)
```
%% Output
La lista sin elementos repetidos es: ['Zanahoria', 'Manzana', 'Naranja', 'Arándano', 'Limón']
%% Cell type:markdown id: tags:
**Paso 5**. Por último, unimos cada elemento de la lista sin repetición con un guión y, a su vez, los ordenamos alfabéticamente.
%% Cell type:code id: tags:
``` python
Resultado='-'.join(sorted(lista_ordenada))
print('El resultado final es: ',Resultado)
```
%% Output
El resultado final es: Arándano-Limón-Manzana-Naranja-Zanahoria
"**Breve descripción**: Se pide entrar en contacto con 10 estudiantes del curso de datos y 2 profesores de LA-CoNGA y pedir una cierta información.\n",
"Con esta información, se debe crear un diccionario llamado \"compas\" en donde se elija un nombre de usuario de mattermost y devuelva otro diccionario con la inforanción pedida.\n",
"Por último, se debe crear una función que reciba como entrada el diccionario y un país de origen, y retorne las informaciones completas de todas las personas de ese país. Además, calcular el promedio de edad de todas las personas en dicho diccionario, y mostrar todas las instituciones sin repetición.\n",
"\n",
" \n",
"\n",
"**Paso 1**. Se crea la base de datos de todos los estudiantes y/o profesores como diccionarios.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"acerot = {\n",
" 'Nombre' : 'Tatiana',\n",
" 'Apellido' : 'Acero Cuellar',\n",
" 'Pais' : 'Colombia',\n",
" 'Residencia' : 'Bogota',\n",
" 'Edad' : 23,\n",
" 'Institucion' : 'Universidad Nacional de Colombia',\n",
" 'Hobbie' : 'Fotografía'\n",
" }\n",
"\n",
"carilloj = {\n",
" 'Nombre' : 'Juan Guillermo',\n",
" 'Apellido' : 'Carillo Reyes',\n",
" 'Pais' : 'Colombia',\n",
" 'Residencia' : 'Bogota',\n",
" 'Edad' : 25,\n",
" 'Institucion' : 'Universidad Nacional de Colombia',\n",
" 'Hobbie' : 'Basket'\n",
" }\n",
"\n",
"mamaniy = {\n",
" 'Nombre' : 'Yhony',\n",
" 'Apellido' : 'Mamani Arce',\n",
" 'Pais' : 'Peru',\n",
" 'Residencia' : 'Lima',\n",
" 'Edad' : 26,\n",
" 'Institucion' : 'Universidad Nacional Mayor de San Marcos',\n",
" 'Hobbie' : 'Cocinar'\n",
" }\n",
"\n",
"martinezj = {\n",
" 'Nombre' : 'Jocabed',\n",
" 'Apellido' : 'Martinez',\n",
" 'Pais' : 'Venezuela',\n",
" 'Residencia' : 'Caracas',\n",
" 'Edad' : 22,\n",
" 'Institucion' : 'Universidad Central de Venezuela',\n",
" 'Hobbie' : 'Musica'\n",
" }\n",
"\n",
"pinzonc = {\n",
" 'Nombre' : 'Carlos Andres',\n",
" 'Apellido' : 'Pinzon Osorio',\n",
" 'Pais' : 'Colombia',\n",
" 'Residencia' : 'Bogota',\n",
" 'Edad' : 30,\n",
" 'Institucion' : 'Universidad Antonio Nariño',\n",
" 'Hobbie' : 'Atletismo'\n",
" }\n",
"\n",
"ramosm = {\n",
" 'Nombre' : 'Maria Jose',\n",
" 'Apellido' : 'Ramos Sotillo',\n",
" 'Pais' : 'Venezuela',\n",
" 'Residencia' : 'Merida',\n",
" 'Edad' : 23,\n",
" 'Institucion' : 'Universidad de los Andres',\n",
" 'Hobbie' : 'Escribir'\n",
" }\n",
"\n",
"vargass = {\n",
" 'Nombre' : 'Sasiru Juliana',\n",
" 'Apellido' : 'Vargas Urbano',\n",
" 'Pais' : 'Colombia',\n",
" 'Residencia' : 'Cali',\n",
" 'Edad' : 20,\n",
" 'Institucion' : 'Universidad del Valle',\n",
" 'Hobbie' : 'Bailar'\n",
" }\n",
"\n",
"teofilo = {\n",
" 'Nombre' : 'Teofilo',\n",
" 'Apellido' : 'Vargas Aucalla',\n",
" 'Pais' : 'Peru',\n",
" 'Residencia' : 'Lima',\n",
" 'Edad' : 54,\n",
" 'Institucion' : 'Universidad Nacional Mayor de San Marcos',\n",
" 'Hobbie' : 'Wing Chun Kuen'\n",
" }\n",
"\n",
"leonl = {\n",
" 'Nombre' : 'Luis Alberto',\n",
" 'Apellido' : 'Leon Andonayre',\n",
" 'Pais' : 'Peru',\n",
" 'Residencia' : 'Callao',\n",
" 'Edad' : 22,\n",
" 'Institucion' : 'Universidad Nacional Mayor de San Marcos',\n",
" 'Hobbie' : 'Guitarra'\n",
" }\n",
"\n",
"siria = {\n",
" 'Nombre' : 'Siria',\n",
" 'Apellido' : 'Sadeddin',\n",
" 'Pais' : 'Venezuela',\n",
" 'Residencia' : 'Bogota',\n",
" 'Edad' : 30,\n",
" 'Institucion' : 'Universidad Simon Bolivar',\n",
" 'Hobbie' : 'Data Science'\n",
" }\n",
"\n",
"arturos = {\n",
" 'Nombre' : 'Arturo',\n",
" 'Apellido' : 'Sanchez',\n",
" 'Pais' : 'Venezuela',\n",
" 'Residencia' : 'Ginebra',\n",
" 'Edad' : 34,\n",
" 'Institucion' : 'LAPP',\n",
" 'Hobbie' : 'Montar Bicicleta'\n",
" }\n",
"\n",
"lnuñez = {\n",
" 'Nombre' : 'Luis',\n",
" 'Apellido' : 'Nuñez',\n",
" 'Pais' : 'Venezuela',\n",
" 'Residencia' : 'Bucaramanga',\n",
" 'Edad' : 64,\n",
" 'Institucion' : 'Universidad Industrial de Santander',\n",
" 'Hobbie' : 'Cocina'\n",
" }"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
" \n",
"\n",
"**Paso 2**. Creamos un diccionario general, que contenga los diccionarios individuales de cada usuario.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"compas = {\n",
" 'acerot' : acerot,\n",
" 'carilloj' : carilloj,\n",
" 'mamaniy' : mamaniy,\n",
" 'martinezj' : martinezj,\n",
" 'pinzonc' : pinzonc,\n",
" 'ramosm' : ramosm,\n",
" 'vargass' : vargass,\n",
" 'teofilo' : teofilo,\n",
" 'leonl' : leonl,\n",
" 'siria' : siria,\n",
" 'arturos' : arturos,\n",
" 'lnuñez' : lnuñez\n",
" }"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
" \n",
"\n",
"**Paso 3**. Se muestra los valores almacenados para un determinado usuario.\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Los datos almacenados son: \n",
"\n"
]
},
{
"data": {
"text/plain": [
"{'Nombre': 'Luis',\n",
" 'Apellido': 'Nuñez',\n",
" 'Pais': 'Venezuela',\n",
" 'Residencia': 'Bucaramanga',\n",
" 'Edad': 64,\n",
" 'Institucion': 'Universidad Industrial de Santander',\n",
" 'Hobbie': 'Cocina'}"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"print('Los datos almacenados son: \\n')\n",
"\n",
"compas['lnuñez']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" \n",
"\n",
"**Paso 4**. Debemos crear una función que filtre los usuarios por un país determinado y luego mostrar los datos de cada usuario que cumpla la condición. Para eso, definimos una función \"filtro\" con dos argumentos: compas y pais. Hacemos un ciclo \"for\" con una condición \"if\" sobre todos los usuarios dejando que se agrupen solo aquellos que sean del pais seleccionado. \n",
"Previamente creamos tres listas vacías: \"datos\" que agrupará los datos de cada usuario, \"da\" que agrupará las keys, y \"dat\" que unirá cada dato con su respectivo key mediante la función \"zip\".\n",
"Por último, se hace otro ciclo \"for\" que imprima cada grupo generado por el \"zip\".\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"\n",
"Los datos del usuario @ martinezj son: \n",
"\n",
"\n",
"('Nombre', 'Jocabed')\n",
"('Apellido', 'Martinez')\n",
"('Pais', 'Venezuela')\n",
"('Residencia', 'Caracas')\n",
"('Edad', 22)\n",
"('Institucion', 'Universidad Central de Venezuela')\n",
"('Hobbie', 'Musica')\n",
"\n",
"\n",
"Los datos del usuario @ ramosm son: \n",
"\n",
"\n",
"('Nombre', 'Maria Jose')\n",
"('Apellido', 'Ramos Sotillo')\n",
"('Pais', 'Venezuela')\n",
"('Residencia', 'Merida')\n",
"('Edad', 23)\n",
"('Institucion', 'Universidad de los Andres')\n",
"('Hobbie', 'Escribir')\n",
"\n",
"\n",
"Los datos del usuario @ siria son: \n",
"\n",
"\n",
"('Nombre', 'Siria')\n",
"('Apellido', 'Sadeddin')\n",
"('Pais', 'Venezuela')\n",
"('Residencia', 'Bogota')\n",
"('Edad', 30)\n",
"('Institucion', 'Universidad Simon Bolivar')\n",
"('Hobbie', 'Data Science')\n",
"\n",
"\n",
"Los datos del usuario @ arturos son: \n",
"\n",
"\n",
"('Nombre', 'Arturo')\n",
"('Apellido', 'Sanchez')\n",
"('Pais', 'Venezuela')\n",
"('Residencia', 'Ginebra')\n",
"('Edad', 34)\n",
"('Institucion', 'LAPP')\n",
"('Hobbie', 'Montar Bicicleta')\n",
"\n",
"\n",
"Los datos del usuario @ lnuñez son: \n",
"\n",
"\n",
"('Nombre', 'Luis')\n",
"('Apellido', 'Nuñez')\n",
"('Pais', 'Venezuela')\n",
"('Residencia', 'Bucaramanga')\n",
"('Edad', 64)\n",
"('Institucion', 'Universidad Industrial de Santander')\n",