{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Ejercicio1: Crear y usar listas de Python\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ejercicio: Usar listas para almacenar nombres de planetas\n", "Las listas permiten almacenar varios valores en una sola variable. Comenzarás un proyecto sobre información planetaria creando una lista de planetas.\n", "\n", "> **TIP**\n", "> Dedica unos minutos para tratar de encontrar una solución. Luego desplázate hacia abajo hasta la parte inferior para ver si has logrado compilar el programa de acuerdo con las especificaciones" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "En primer lugar, crea una variable denominada `planets`. Agrega los ocho planetas (sin Plutón) a la lista. A continuación, muestra el número de planetas." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Creamos la lista planets y la mostramos" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Agrega a Plutón a la lista que creaste. Luego muestra tanto el número de planetas como el último planeta de la lista." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Agregamos a plutón y mostramos el último elemento" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> Recuerda: Lo importante es intentarlo, puedes auxiliarte de internet, libros, etc. El objetivo de una kata es la comprobación de la comprensión de la lección y su aplicación inmediata a la resolución de problemas. Go for it!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ejercicio 2: Trabajando con datos de una lista\n", "\n", "### Usar slices para recuperar partes de una lista" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Es posible que debas trabajar con diferentes secciones de una lista. En nuestro ejemplo, queremos mostrar planetas más cerca y más lejos del sol de un planeta que el usuario ingresa por teclado.\n", "\n", "Comienza agregando el código para crear una lista con los planetas." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Lista de planetas\n", "planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Neptune']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Solicita al usuario el nombre de un planeta\n", "\n", "A continuación, agrega el código para solicitar al usuario un nombre. Debido a que las cadenas distinguen entre mayúsculas y minúsculas en Python, pídale al usuario que use una letra mayúscula para comenzar el nombre del planeta." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Solicitamos el nombre de un planeta *Pista: input()*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encuentra el planeta en la lista\n", "Para determinar qué planetas están más cerca que el que ingresó el usuario, debes encontrar dónde está el planeta en la lista. Puedes utilizar `index` para realizar esta operación. Agrega el código para encontrar el índice del planeta." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Busca el planeta en la lista" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Mostrar planetas más cercanos al sol que el que el usuario ingresó\n", "\n", "Con el índice determinado, ahora puedes agregar el código para mostrar los planetas más cercanos al sol." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Muestra los planetas más cercanos al sol" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Mostrar planetas más alejados del sol que el que el usuario ingresó\n", "\n", "Puedes usar el mismo índice para mostrar planetas más alejados del sol. Sin embargo, recuerda que el índice inicial se incluye cuando usas un slice. Como resultado, tendrás que agregar 1 al valor. Agrega el código para mostrar los planetas más alejados del sol." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Muestra los planetas más lejanos al sol" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Soluciones" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ejercicio 1" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Creamos la lista planets y la mostramos\n", "\n", "planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']\n", "\n", "print('There are', len(planets), 'planets')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Agregamos a plutón y mostramos el último elemento\n", "\n", "planets.append('Pluto')\n", "\n", "print(planets[-1], 'is the last planet')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ejercicio 2" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Lista de planetas\n", "\n", "planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Neptune']" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Solicitamos el nombre de un planeta *Pista: input()*\n", "user_planet = input('Please enter the name of the planet (with a capital letter to start)')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Busca el planeta en la lista\n", "\n", "planet_index = planets.index(user_planet)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Muestra los planetas más cercanos al sol\n", "\n", "print('Here are the planets closer than ' + user_planet)\n", "print(planets[0:planet_index])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Muestra los planetas más lejanos al sol\n", "\n", "print('Here are the planets further than ' + user_planet)\n", "print(planets[planet_index + 1:])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Curso Propedútico de Python para Launch X - Innovacción Virtual.\n", "\n", "Material desarrollado con base en los contenidos de MSLearn y la metáfora de LaunchX, traducción e implementación por: Fernanda Ochoa - Learning Producer de LaunchX.\n", "\n", "Redes:\n", "* GitHub: [FernandaOchoa](https://github.com/FernandaOchoa)\n", "* Twitter: [@imonsh](https://twitter.com/imonsh)\n", "* Instagram: [fherz8a](https://www.instagram.com/fherz8a/)" ] } ], "metadata": { "interpreter": { "hash": "b8bdd4e700647ba2b08c59e5df8b7da1dcf50a218bcd4c1bcd9b3dc92e8788e5" }, "kernelspec": { "display_name": "Python 3.9.1 64-bit", "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.9.5" }, "nteract": { "version": "nteract-front-end@1.0.0" } }, "nbformat": 4, "nbformat_minor": 4 }