Indice de contenidos

Objetivo
Instalación
Listar los ejercicios
Obtener un ejercicio
Leer un ejercicio
Probar un ejercicio
Ejecutar un ejercicio
Actualizar un ejercicio
Comprimir un ejercicio
Autenticarse como usuario
Seguir tu actividad
Miscelánea

Objetivo

Pypas te ofrece cientos de ejercicios con los que podrás practicar tu lenguaje de programación favorito Python.

Aprende Python comiendo pipas!

Se proporciona una herramienta en línea de comandos pypas mediante la cual podrás interactuar con los ejercicios.

Instalación

Necesitas tener --al menos-- Python 3.12 instalado en tu máquina.

$ pip install pypas-cli

Es importante que tengas la última versión instalada, para evitar fallos y disponer de las últimas características. Para actualizar a la última versión de pypas-cli:

$ pip install -U pypas-cli  # pypas upgrade
La última versión disponible de pypas-cli es la 0.1.6

Listar los ejercicios

$ pypas list

Es posible filtrar por tema principal (topic):

$ pypas list -p <topic>

Es posible filtrar por tema secundario (topic):

$ pypas list -s <topic>

En el caso de disponer de varios frames activos, puedes filtrar por frame:

$ pypas list -f <frame>

Los filtros anteriores pueden usarse de manera conjunta.

Obtener un ejercicio

Cada ejercicio dispone de un slug que lo identifica (nombre único):

$ pypas get <slug>

El comando anterior creará la siguiente estructura de ficheros dentro de la carpeta del ejercicio:

.
├── docs
│   └── README.pdf
├── main.py
├── tests
│   ├── __init__.py
│   └── test_main.py
└── vendor.py

Es posible que esta estructura cambie ligeramente, en función de las características del ejercicio.

Leer un ejercicio

Una vez en la carpeta del ejercicio:

$ pypas doc

El comando anterior abrirá el documento con el enunciado del ejercicio.

Este comando requiere estar dentro de la carpeta del ejercicio.

Probar un ejercicio

El punto de entrada de cualquier ejercicio es main.py. Será el fichero que debes cumplimentar buscando la etiqueta # TODO

Para probar (testear) un ejercicio puedes usar:

$ pypas test

En realidad es un simple wrapper para pytest.

Aprovecha todo el potencial de pytest usando las opciones en línea de comandos que ofrece.

Los tests que se ejecutan son aquellos que viven en la carpeta tests de cada carpeta de ejercicio. Por lo tanto también puedes probar el ejercicio con:

$ pytest
Este comando requiere estar dentro de la carpeta del ejercicio.

Ejecutar un ejercicio

Eventualmente podrías querer ejecutar tu código en vez de lanzar las pruebas.

Para explicar cómo, vamos a partir de un ejercicio "ficticio" simple_add.py:

def add(x: int, y: int) -> int:
      return x + y

# DO NOT TOUCH THE CODE BELOW
# ...

Tendrás que crear un fichero args.py dentro de la carpeta del ejercicio con los valores que quieras dar a los parámetros de la función principal:

x = 3
y = 7

Ahora podrás ejecutar tu programa con:

$ python simple_add.py
Puedes utilizar esta estrategia para depurar los errores o mejorar tu código.

Actualizar un ejercicio

Es posible que, debido a la corrección de errores o mejoras introducidas, haya actualizaciones de los ejercicios. En ese caso, puedes actualizar el ejercicio con:

$ pypas update

Se hará automáticamente una copia de seguridad (local) de aquellos ficheros que puedan ser sobreescritos.

Este comando requiere estar dentro de la carpeta del ejercicio.

Comprimir un ejercicio

Si quisieras comprimir todo el contenido del ejercicio para enviarlo o almacenarlo, lo puedes hacer con:

$ pypas zip

El comando anterior genera un fichero <exercise-slug>.zip dentro de la propia carpeta del ejercicio.

Este comando requiere estar dentro de la carpeta del ejercicio.

Autenticarse como usuario

Para poder autenticarte como usuario debes recibir un token por parte del administrador. Una vez que dispongas de este token debes ejecutar el siguiente comando:

$ pypas auth <token>

Si la autenticación ha sido satisfactoria, se creará un fichero .pypas.toml en el HOME del usuario con la configuración correspondiente.

Desautenticarse

Es posible borrar el token de autenticación ejecutando: pypas unauth

Entregar un ejercicio

$ pypas put

El comando anterior comprimirá todos los archivos de tu ejercicio y los subirá a pypas.es

Es necesario que estés previamente autenticado/a.
Este comando requiere estar dentro de la carpeta del ejercicio.

Seguir tu actividad

$ pypas log

Con el comando anterior podrás obtener la información de tus entregas, separadas por frames. Un frame es un "bloque de ejercicios" que suele tener asociada una fecha de comienzo y una fecha de finalización.

Dentro de cada frame verás la siguientes información:

Si queremos obtener información sobre los ejercicios entregados podemos ejecutar: pypas log -v
Si queremos obtener información de un determinado frame: pypas log -f <frame>

Es necesario que estés previamente autenticado/a.

Miscelánea