02 Python en Pocos Pasos Ejercicios
02 Python en Pocos Pasos Ejercicios
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Python En Pocos Pasos: Ejercicios \n",
"\n",
"Este es un ejercicio para evaluar su comprensión de los Fundamentos de
Python."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Ejercicios\n",
"\n",
"Responda las preguntas o complete las tareas que se detallan en negrita a
continuación, use el método específico descrito, si corresponde."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** ¿Cuánto es 7 a la potencia de 4?**"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2401"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"7**4"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Divida esta cadena:**\n",
"\n",
" s = \"Hola que tal\"\n",
" \n",
"**en una lista. **"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"s = \"Hola que tal\""
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['Hola', 'que', 'tal']"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"s.split()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Dadas las variables:**\n",
"\n",
" planeta = \"Tierra\"\n",
" diametro = 12742\n",
"\n",
"** Use .format() para imprimir la siguiente cadena: **\n",
"\n",
" El diámetro de la Tierra es de 12742 kilómetros."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"planeta = \"Tierra\"\n",
"diametro = 12742"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"El diametro de la Tierra es de 12742 kilómetros\n"
]
}
],
"source": [
"print(\"El diametro de la {} es de {} kilómetros\".format(planeta, diametro))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Dada esta lista anidada, usa indexación para tomar la palabra \"hola\" **"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"lst = [1,2,[3,4],[5,[100,200,['hola']],23,11],1,7]"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'hola'"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lst[3][1][2][0]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Dado este diccionario anidado, tome la palabra \"hola\". **"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"d = {'c1':[1,2,3,{'truco':['oh','hombre','incepción',{'destino':
[1,2,3,'hola']}]}]}"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'hola'"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"d['c1'][3]['truco'][3]['destino'][3]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** ¿Cuál es la principal diferencia entre una tupla y una lista? **"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": true,
"jupyter": {
"outputs_hidden": true
}
},
"outputs": [],
"source": [
"# La tupla es es inmutable es decir sus valores no pueden ser modificados
mientras que en una lista si."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Cree una función que capture el dominio del sitio web de correo electrónico
a partir de una cadena con el siguiente formato: **\n",
"\n",
" [email protected]\n",
" \n",
"**Entonces, por ejemplo, pasar \"[email protected]\" devolvería:
dominio.com**"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [],
"source": [
"def obtenerDominio(dominio):\n",
" dominio = dominio.split('@')\n",
" print(dominio[-1])"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"dominio.com\n"
]
}
],
"source": [
"obtenerDominio('usu@[email protected]')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Cree una función básica que devuelva True si la palabra 'perro' está
contenida en la cadena de entrada. No se preocupe por los casos extremos como una
puntuación que se adjunta a la palabra perro, no diferencie mayúsculas de
minúsculas. **"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [],
"source": [
"def encontrarPerro(cadena):\n",
" cadena = cadena.split()\n",
" if 'perro' in cadena:\n",
" return True\n",
" else:\n",
" return False"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"encontrarPerro('¿Hay algún perro por ahí?')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Crea una función que cuente la cantidad de veces que aparece la
palabra \"perro\" en una cadena. Nuevamente ignore los casos extremos. **"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {},
"outputs": [],
"source": [
"def contarPerro(cadena):\n",
" cadena = cadena.split()\n",
" count=0\n",
" for i in range(0,len(cadena)):\n",
" if cadena[i]=='perro':\n",
" count= count+1\n",
" return count\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 66,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2"
]
},
"execution_count": 66,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"contarPerro('Este perro corre más rápido que el otro perro')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Use expresiones lambda y la función filter () para filtrar las palabras de
una lista que no comienza con la letra 's'. Por ejemplo:**\n",
"\n",
" seq = ['sopa', 'perro', 'salado,'gato','excelente']\n",
"\n",
"**debe ser filtrado a:**\n",
"\n",
" ['sopa', 'salado']"
]
},
{
"cell_type": "code",
"execution_count": 72,
"metadata": {},
"outputs": [],
"source": [
"seq = ['sopa', 'perro', 'salado','gato','excelente']"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['sopa', 'salado']"
]
},
"execution_count": 73,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\n",
"list(filter(lambda palabra: palabra[0]=='s', seq))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Problema Final\n",
"**Usted conduce un poco demasiado rápido, y un oficial de policía lo detiene.
Escriba una función para devolver uno de los 3 posibles resultados: \"Sin
infracción\", \"Infracción leve\" o \"Infracción Grave\". Si su velocidad es 60 o
menos, el resultado es \"Sin infracción\". Si la velocidad está entre 61 y 80
inclusive, el resultado es \"Infracción leve\". Si la velocidad es 81 o más, el
resultado es \"Infracción Grave\". A menos que sea su cumpleaños (codificado como
un valor booleano en los parámetros de la función) - en su cumpleaños, su velocidad
puede ser 5 más alta en todos los casos.**"
]
},
{
"cell_type": "code",
"execution_count": 92,
"metadata": {},
"outputs": [],
"source": [
"def saber_infraccion(vel, cumple):\n",
" cinco = 0\n",
" resul = [\"Sin infracción\", \"Infracción leve\", \"Infracción
Grave\"]\n",
" if cumple==True:\n",
" cinco = 5\n",
" if vel<=60+cinco:\n",
" print(resul[0])\n",
" elif vel >61+cinco and vel<= 80+cinco:\n",
" print(resul[1])\n",
" elif vel>=81+cinco:\n",
" print(resul[2])\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 93,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Infracción leve\n"
]
}
],
"source": [
"saber_infraccion(81,True)"
]
},
{
"cell_type": "code",
"execution_count": 94,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Infracción Grave\n"
]
}
],
"source": [
"saber_infraccion(81,False)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# ¡Excelente!"
]
}
],
"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.10"
}
},
"nbformat": 4,
"nbformat_minor": 4
}