Métodos especiales
Python · Unidad 14: Clases modernas
- Plan completo
- Python
- 10 ejercicios
Ya viste que __init__, __str__ y __eq__ los llama Python solo. Hay uno para cada cosa que quieras que tu objeto sepa hacer.
__len__ responde a len(objeto) y tiene que regresar un número entero.
class Mochila:
def __init__(self):
self.cosas = []
def meter(self, c):
self.cosas.append(c)
def __len__(self):
return len(self.cosas)
m = Mochila()
m.meter("libro")
m.meter("pluma")
print(len(m))Imprime
2
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Completa el código
Completa para que
len(b)diga cuántas cartas hay.2. Predice la salida
El envío lleva dos cajas, una de 2 piezas y otra de 3. ¿Qué imprime?
3. Encuentra el bug
La baraja tiene 3 cartas, así que debería imprimir 3. ¿Qué línea tiene el error?
4. Predice la salida
El grupo guarda alumnos, pero se busca por nombre. ¿Qué imprime?
5. Opción múltiple
Una ruta con 4 paradas da
len(ruta)igual a 3. ¿Qué está contando?6. Predice la salida
¿Qué imprime este código?
7. Encuentra el bug
Sumar los dos pagos debería imprimir Pago(monto=50). ¿Qué línea tiene el error?
8. Completa el código
Completa para que imprima: Bolsa(kilos=8)
9. Ordena las líneas
Ordena para que imprima: 2 True
10. Predice la salida
Se juntan dos cajas en una tercera. ¿Qué imprime?
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.