Curso de Python – 6. Bibliotecas/Paquetes


En programación hay mucho código escrito que funciona muy bien por otras personas, lo que nos ahorrará el esfuerzo de crearlo y nos asegurará que funcione, para con menos conseguir más funcionalidad. Por ello, es importante saber como incluir el código de terceros en nuestro código, sus paquetes (bibliotecas).

Este artículo forma parte del curso completo de Python

Teoría

6.1- Paquetes y Módulos

En Python es importante diferenciar entre Paquetes y Módulos. Será diferente si queremos crear un paquete o utilizar un paquete de terceros.

6.2- Crear e importar nuestros propios Paquetes

Aprender a importar nuestros propios scripts para proyectos grandes, nos facilitará poder trabajar con más gente en el mismo proyecto y a tener archivos de menor tamaño para que sea más sencillos de leer.

6.3- PIP – Administrador de Paquetes

En Python existe una «tienda de aplicaciones gratuitas» que se llama PIP. Con PIP instalaremos cómodamente y rápidamente los paquetes de terceros que queramos.

Descargar el fichero llamado get-pip.py desde https://bootstrap.pypa.io/get-pip.py

Se puede buscar cualquier paquete para instalarlo desde la «tienda de paquetes» en https://pypi.org/

6.4- Paquete Random

Tirar dados, jugar a la ruleta, elegir una ubicación al azar, etc. Si queremos generar números aleatorios utilizaremos la biblioteca Random. 

Documentación completa del paquete Random en: https://docs.python.org/3/library/random.html

6.5- Paquete Math

Raíces, logaritmos, coseno, tangente, y muchas operaciones matemáticas más las encontraremos en el paquete Math.

Documentación completa del paquete Math en: https://docs.python.org/3/library/math.html

6.6- Paquete Datetime

Las fechas, cuánto tiempo falta para tal evento, formatos diferentes de fechas para cada país, y lo que necesitemos con las fechas con el paquete Datetime.

Documentación completa del paquete Datetime en: https://docs.python.org/3/library/datetime.html

Ejercicios

Ejercicio 6.1-ruleta_casino.py

Realizar el juego de la ruleta de casino simplificada.

Nuestra consola nos pedirá apostar a un número (del 1 al 36, comprobar que no se introduzca otro) que no se a el 0 al pulsar la tecla Intro se realizará la jugada y nos devolverá si hemos ganado algo o no.

  • Si toca 0 habremos perdido
  • Si toca nuestro número habremos ganado
  • Si toca un color y nuestro número es de ese color habremos ganado también (indicar que ha tocado el color y no el número)

Al devolver la solución volverá a preguntar por otro número inmediatamente (el programa estará en bucle hasta que escribamos la palabra «salir»)

Cada vez que se reinicie el juego, tendrá que salir un historial de las partidas ganadas y perdidas (el número jugado y si se ha ganado o perdido)

Ejemplo de programa:

Ejercicio 6.2-videojuego.py

Realizaremos un minijuego de combate contra la máquina donde se pedirá al usuario decidir si: atacar, defenderse o curarse.
Habrá dos contadores de vida: el nuestro y el del enemigo, el que llegue a cero pierde.
El enemigo elije al azar si nos ataca, se defiende o se cura.

En caso de:
• Si alguien se defiende de un ataque, entonces perderá 0 vidas
• Si alguien ataca mientras el otro le ataca, entonces ambos perderán -2 vidas
• Si alguien se cura mientras el otro le ataca, entonces el que no ataca perderá -2 vidas
• Quien se cura recuperará +1 vida sea atacado o no

Crearemos los métodos de las acciones que actualicen las vidas de ambos: atacar_jugador, defender_jugador, curar_jugador, atacar_enemigo, defender_enemigo, curar_enemigo. A todos los métodos les pasaremos como argumentos la vida del jugador y la vida del enemigo, que los actualizarán según deban y los devolverán ambos actualizados; además, les pasaremos los argumentos que necesitemos (pista: «atacar» puede que requiera un argumento adicional de «defensa_contraria»).

Ampliación: añade alguna función extra al juego (ideas: golpe fuerte que quite -4, hechizo que roba vida, otros medidores para los jugadores como maná o fatiga, etc.)

Ejercicio 6.3-velocidad_de_escape.py

Nos han contratado en la Agencia Espacial Internacional, tienen intención de poner en órbita unos satélites, pensando en el futuro cuando lleguemos a Marte y a la Luna también querrán lanzar satélites desde ahí.

Por lo que quieren una calculadora que introduciendo la masa de un planeta y su radio nos devuelva la «velocidad de escape» de cada planeta en concreto.

Pistas:

  1. Nos documentamos https://es.wikipedia.org/wiki/Velocidad_de_escape
  2. Buscamos la fórmula que nos piden crear en la calculadora
  3. Localizamos las variables de la fórmula (G es Constante de gravitación universal, M es Masa del planeta y r es Radio del planeta)
  4. Programamos la calculadora

Una vez que lo tengamos, probaremos con los datos de los planetas que nos han pedido (Buscamos los datos en Internet): Tierra, Marte y Luna

Es importante comprobar los datos que introduzca el usuario: si han metido números y no otra cosa, que no sean vacíos, etc.

Ejemplo:

Ejercicio 6.4-datetime.py

Se pide crear un script que pida introducir por pantalla una fecha de nacimiento con formato “DD/MM/YYYY” y que imprima por pantalla los días que ha vivido desde su nacimiento hasta el instante de ejecutar el script y que también imprima por pantalla la edad en años.

Comparte esta entrada en:
Safe Creative #1401310112503
Curso de Python – 6. Bibliotecas/Paquetes por "www.jarroba.com" esta bajo una licencia Creative Commons
Reconocimiento-NoComercial-CompartirIgual 3.0 Unported License.
Creado a partir de la obra en www.jarroba.com

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies

ACEPTAR
Aviso de cookies