Progreso: 0/0 • 0%
Cargando Pyodide… (primera vez puede tardar)
Editor (Python)
—
Reto actual
Selecciona una lección…
Ayuda paso a paso
Pulsa “🆘 Ayuda” cuando te quedes trabado. Te doy pistas, no spoilers.
Resultados
Tu progreso
Puntos = requisitos cumplidos. Tests te abren el ✅⭐.
Los que más duraron
Top por tiempo acumulado (aprox).
Datasets incluidos
Se escriben en el filesystem virtual de Pyodide para practicar lectura de CSV.
Vista rápida
Tip: usa csv.DictReader (estándar). Ej:
import csv + open('ventas.csv', encoding='utf-8').
🧱 Tipos básicos
a = 10 b = "Hola" c = True print(type(a), type(b), type(c))
type(x)te dice qué es.- Strings siempre con comillas.
📦 Listas y slicing
x = [2, 4, 6, 8] print(len(x)) print(x[0]) print(x[1:3]) print(sum(x)/len(x))
- Python indexa desde 0 (sí, duele al principio).
🔁 for / if
for i in range(1, 6):
if i % 2 == 0:
print(i, "par")
else:
print(i, "impar")
- El
:y la indentación no son decoración 😅
🧩 Funciones
def area_rect(b, h):
return b * h
print(area_rect(3, 4))
- Si un reto pide un nombre exacto, respétalo.
🧠 Diccionarios
freq = {}
for ch in "banana":
freq[ch] = freq.get(ch, 0) + 1
print(freq)
gette ahorra milif.
📄 Leer CSV (sin librerías)
import csv
with open("ventas.csv", encoding="utf-8") as f:
rows = list(csv.DictReader(f))
print(rows[0])
- Todo queda como diccionarios por fila.
🧯 Manejo de errores
try:
x = int("12a")
except ValueError:
x = 0
print(x)
- Errores pasan. Lo importante es cómo reaccionas.
🏗️ Clase rápida
class Cuenta:
def __init__(self, saldo=0):
self.saldo = saldo
def depositar(self, n):
self.saldo += n
- OOP: datos + comportamiento.