PyBites Template for Exercises
Resolver y realizar Test para PyBites
Intro
Este notebook se podrá usar como plantilla para resolver los ejercicios PyBites de la plataforma codechalleng.es
Uso
- En la PyBites Platform selecciona un Bite Exercise y haz clic en GITHUB -> DOWNLOAD BITE
- Copiar este notebook a la carpeta pybites_biteXYZ, ejemplo: pybites_bite130.
- Abrir el notebook y ejecutar todas las celdas ( Cell -> Run All ).
- Cargar (%load) el módulo python ejecutando la segunda celda (más abajo) para resolver ejercicio.
- Escribir (%%writefile) al módulo python la respuesta al ejercicio. Leer la Nota para más detalles.
- Ejecutar las pruebas, descomentar y ejecutar la última celda utilizando PyTest.
Note: El comando mágico de celda %%writefile debes estar en la primera línea, borra el comentario generado por el comando mágico de línea %load .
from pathlib import Path
from IPython.display import HTML
BITE = "./bite.html"
files = Path().glob("test_*.py")
try:
PYBITES = next(files)
except StopIteration:
raise(Exception("PYBITES_TEMPLATE " +
"must be inside pybite_biteXYZ " +
"folder with a test file"))
if PYBITES:
PYBITES = str(PYBITES).split("test_")[1]
def write_imports(file="__imports.py", code=None,
mode="w", seek=0):
with open(file, mode) as pb:
lines = ""
if "r" in mode:
lines = "".join(pb.readlines())
lines = f"{code}\n{lines}"
pb.seek(seek)
pb.truncate()
pb.writelines(lines)
HTML(filename=BITE)
CODE = f"%load {PYBITES}"
write_imports(code=CODE)
CODE = f"%%writefile {PYBITES}"
write_imports(file=PYBITES, code=CODE,
mode="r+", seek=0)
%load __imports.py