Muchos empiezan Python y se estancan porque no tienen ejercicios que realmente importen.
Descarga 30 ejercicios de Python pensados para practicar y dominar lo básico y más allá.
PDF gratuito aquí.
Cada día escribo un consejo como este (pero más elaborado por email).
Si no quieres perderte ninguno, puedes apuntarte a mi newsletter a través del enlace en mi perfil.
Además, te envío gratis un PDF con 30 ejercicios para que practiques.
Asumiendo que la baraja tiene 12 cartas (y cada carta es un número):
baraja = list(range(1, 13))
jugadores = [[], [], [], []]
for indice, carta in enumerate(baraja):
jugador = jugadores[indice % len(jugadores)]
jugador.append(carta)
for jugador in jugadores:
print(jugador)
Esto saca lo siguiente por pantalla:
[1, 5, 9]
[2, 6, 10]
[3, 7, 11]
[4, 8, 12]
(sigue)
El tercer candidato demuestra sus habilidades con el siguiente código:
for carta, jugador in zip(baraja, cycle(jugadores)):
jugador.append(carta)
¡CONTRATADO!
Estudia estas soluciones, entiéndelas bien.
La práctica consciente se trata de realizar un mismo ejercicio varias veces intentando lograr una solución distinta (y mejor) de cada vez.
Esto es lo que te hará avanzar.
Estás en una entrevista de trabajo para ser crupier profesional y te piden que repartas las cartas de una baraja entre 4 jugadores para demostrar tus habilidade.
Lo tienes que hacer con Python.
Así que, con una gota de sudor frío en la frente y con los nervios de fiesta loca escribes el siguiente código:
(sigue)
@Python_Dv Pues ninguna de ellas. No sé si el test está hecho "a pillar" o está generado por una IA sin ningún tipo de cuidado.
Error de indexación pues no existe el elemento 7 en la cadena de texto, que es de longitud 7 (el último elemento es el 6).
@Bhernandezdot@PythonPr Bruno, tienes razón.
Sin embargo, la pregunta es "¿Cuál será la salida del progama?". Asumiendo a que se refiere salida por pantalla, sería interpretable, pues la salida no será "".
Cada día te cuento un consejo sobre Python (como este) por correo. Si te interesa, te apuntas gratis en el enlace de mi bio (y te mando un PDF con 14 ejercicios).
¿Has visto esta LOCURA de Python?
Imagina:
Pides piso 5 en el ascensor → te lleva al 4
Llamas a mamá → contesta tu ex 😱
Sacas 100 € del cajero → te da 80
¿Te volverías loco?
Pues Python hace EXACTAMENTE ESO con round().
Prepárate…
🧵👇
Bonus:
redondeo a decimales también puede dar sorpresas (por la representación flotante 0.1 + 0.2 = 0.30000000000000004):
>>> round(1.675, 2)
1.68
>>> round(2.675, 2)
2.67
Moraleja: round() es genial, pero entiende su regla "half to even".
Si necesitas redondeo "siempre arriba" → usa decimal module o truquitos.
¿Te ha pillado alguna vez desprevenido round() en Python?
¿O sigues en shock?
Cuéntame abajo (el que ponga "maldito Python" se lleva like garantizado).