Hola, soy bauti, necesito ayuda. Recien estoy dando mis primeros pasos en python. Tengo que hacer un 7 y medio. El juego ese parecido al blackjack. Pero no puedo hacer que funcione. Tampoco que pierda 10 monedas al comienzo y si gana se le suma 20. No se que estoy haciendo mal… Si me pueden ayudar se los agradezco.
#Biblioteca
import random
#Variables
baraja = [1, 2, 3, 4, 5, 6, 7, 10, 11, 12] * 4
estrellas = 100
def Repartir(baraja):
mano = []
for i in range(2):
random.shuffle(baraja)
carta = baraja.pop()
mano.append(carta)
return mano
def monedas(Thor_mano, banca_mano, estrellas):
for sumar in estrellas:
if sumar == Thor_mano:
estrellas +20
elif sumar == banca_mano:
estrellas -10
else: print("No perdes monedas.")
def play_again():
again = input("Queres Perder de nuevo Thor ? (S/N) : ").lower()
if again == "s":
banca_mano = []
Thor_mano = []
baraja = [1, 2, 3, 4, 5, 6, 7, 10, 11, 12] * 4
Juego()
else:
print("Chau Thor anda a ver netflix.. ")
exit()
def total(mano):
total = 0
for carta in mano:
if carta == "10" or carta == "11" or carta == "12":
total+= 0.5
else: total += carta
return total
def Dame(mano):
carta = baraja.pop()
if carta == 0.5:carta = "8"
if carta == 0.5:carta = "9"
if carta == 0.5:carta = "10"
mano.append(carta)
return mano
def mostrar_resultados(banca_mano, Thor_mano):
print ("La banca tiene " + str(banca_mano) + " con un total de " + str(total(banca_mano)))
print ("Thor vos tenes " + str(Thor_mano) + " con un total de " + str(total(Thor_mano)))
def siete_y_un_cachito(banca_mano, Thor_mano):
if total(Thor_mano) == 7.5:
mostrar_resultados(banca_mano, Thor_mano)
print("Felicitaciones Thor! Ganaste, ahora te podes comprar un rayo !\n")
monedas(Thor_mano)
play_again()
elif total(banca_mano) == 7.5:
mostrar_resultados(banca_mano, Thor_mano)
print ("Perdón Thor, anda a jugar con Hulk, capaz a el le ganas en algo.\n")
play_again()
def score(banca_mano, Thor_mano,):
if total(Thor_mano) == 7.5:
mostrar_resultados(banca_mano, Thor_mano)
print("Felicitaciones Thor! Ganaste, ahora te podes comprar un rayo !\n")
monedas(Thor_mano)
elif total(banca_mano) == 7.5:
mostrar_resultados(banca_mano, Thor_mano)
print ("Perdón Thor, anda a jugar con Hulk, capaz a el le ganas en algo.\n")
elif total(Thor_mano) > 7.5:
mostrar_resultados(banca_mano, Thor_mano)
print ("Que ambisioso Thor. Te pasaste. Perdiste.\n")
elif total(banca_mano) > 7.5:
mostrar_resultados(banca_mano, Thor_mano)
print ("La banca se pasó, Ganaste THOR!\n")
monedas(Thor_mano)
elif total(Thor_mano) < total(banca_mano):
mostrar_resultados(banca_mano, Thor_mano)
print("Perdon Thor, Tus cartas son malisimas, vos perdes.\n")
elif total(Thor_mano) > total(banca_mano):
mostrar_resultados(banca_mano, Thor_mano)
print ("VAMOS THOR, tus cartas son BUENARDAS, Vos Ganas.\n")
monedas(Thor_mano)
def Juego():
opción = 0
print ("BIENVENIDO THOR AL 7 y UN CACHITO \n")
while estrellas !=0 and estrellas <500:
banca_mano = Repartir(baraja)
Thor_mano = Repartir(baraja)
sumar = monedas(banca_mano)
print ("La banca tiene " + str(banca_mano[0]))
print ("Thor vos tenes" + str(Thor_mano) + " con un total de " + str(total(Thor_mano)))
siete_y_un_cachito(banca_mano, Thor_mano)
print("Tienes un total de "+ monedas(sumar))
while opción != "s":
opción = input("Que queres hacer [D]ame, [Q]uedo, o [S]alir: ").lower()
if opción == "d":
Dame(Thor_mano)
while total(banca_mano) < 5:
Dame(banca_mano)
score(banca_mano, Thor_mano)
play_again()
elif opción == "q":
while total(banca_mano) < 5:
Dame(banca_mano)
score(banca_mano, Thor_mano)
play_again()
elif opción == "s":
print ("Chau Thor, ya van a venir tiempos mejores. Mejor anda a practicar con el martillo..")
exit()
if __name__ == "__main__":
Juego()