Advertisement
Mercatona

ESC.py

Apr 7th, 2020
559
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 6.01 KB | None | 0 0
  1. import random
  2. import copy
  3.  
  4. nuevo_concursante="s"
  5. concursantes=[]
  6. while nuevo_concursante=="s":
  7.     concursante=input("Introduzca el nombre del nuevo concursante: ")
  8.     globals()[concursante]={"nombre":concursante,"favoritidad":random.randint(1,100),"puntos":0}
  9.     concursantes.append(concursante)
  10.     nuevo_concursante= input( "Quieres añadir un nuevo concursante? (s/n) ")
  11.     if nuevo_concursante== "n":
  12.         nuevo_concursante= input("ESTOS SON LOS CONCURSANTES ELEGIDOS {0} ¿DESEA AÑADIR MÁS?".format (concursantes))
  13. for concursante in concursantes:
  14.     nota=(globals()[concursante] ["favoritidad"])/10
  15.     print (" del 1 al 10 a nivel general, se puede valorar a {0} con un {1} antes de los ensayos".format (concursante,nota))
  16.     if globals()[concursante] ["favoritidad"]<40:
  17.         print (random.choice(["Se considera muy básica", "No gusta", "Ha decepcionado", "Los Eurofans piensan que se ha amañado su preselección","Piensan que es un fuego 2.0 pero mal copiado", "No da una nota en directo","La canción no hay por donde cogerla"]))
  18.     elif globals()[concursante] ["favoritidad"]<70:
  19.         print (random.choice (["Pasa desapercibida","Hay cosas peores","Es un fuego 2.0","Hay a alguna gente a la que le gusta","Buena y ya", "Es una canción correcta"]))
  20.     elif globals()[concursante] ["favoritidad"]<90:
  21.         print (random.choice (["Gusta bastante","La amas o la odias", "Está en el top 15 de muchos", "Encanta", "Se cree que puede ser el bop del verano", "Es una favorita de los fans"]))
  22.     else:
  23.         print ("Winner alert")
  24. continuar="t"
  25. while continuar !="s":
  26.     continuar=input("Pulsa s y dale a enter para continuar a los ensayos: ")
  27. continuar="t"
  28. print ("*********************")
  29. print ("DURANTE LOS ENSAYOS")
  30. print ("*********************")
  31. for concursante in concursantes:
  32.     desviación_ensayos=random.randint(-7,7)
  33.     globals()[concursante] ["favoritidad"]+= desviación_ensayos
  34.     ensayo=random.randint (1,2)
  35.     print ("Ensayo {0} de {1}".format (ensayo,concursante))
  36.     if desviación_ensayos<0:
  37.         print (random.choice (["Ha decepcionado en directo","La puesta en escena no ha terminado de encajar", "Es cutre", "Se queda a medio gas","Es un poco un flop en general","Da perecita","La prensa se ha quedado fría","No ha gustado demasiado","Mejor no comentar demasiado"]))
  38.     elif desviación_ensayos>0:
  39.         print (random.choice (["Nadie se esperaba la puesta en escena","Ha sorprendido con creces", "Ha mejorado muchísimo la afinación", "Se ha elevado muchisimo", "Ha crecido bastante", "Hay un elemento sorpresa en la PE que ha flipado", "El baile ha dejado flipado a todos"]))
  40.     else:
  41.         print (random.choice(["Sin más","Ni fu ni fa","Algo normalito","Lo que se esperaba"]))
  42.  
  43. while continuar !="s":
  44.     continuar=input("Pulsa s y dale a enter para continuar para ir a los directos: ")
  45. continuar="t"
  46. print ("*********************")
  47. print ("GALAS EN DIRECTO")
  48. print ("*********************")
  49. RO=1
  50. favoritidades=[]
  51. for concursante in concursantes:
  52.     print (":::::::::::::::::::::::::{0} es el número {1} en actuar:::::::::::::::::::::::::".format(concursante,RO))
  53.     #P.E.
  54.     desviación_PE=random.randint(-15,40)
  55.     globals()[concursante] ["favoritidad"]+= desviación_PE
  56.     notaPE=float((desviación_PE+15)/55*10)
  57.     print ("Puesta en Escena: {0}".format (notaPE))
  58.     #AFINACIÓN
  59.     desviación_Afinacion=random.randint(-21,15)
  60.     globals()[concursante] ["favoritidad"]+= desviación_Afinacion
  61.     notaAfinacion=float((desviación_Afinacion+21)/36*10)
  62.     print ("Afinación: {0}".format (notaAfinacion))
  63.     #ACEPTACIÓN GENERAL
  64.     desviación_AG=random.randint(-21,25)
  65.     globals()[concursante] ["favoritidad"]+= desviación_AG
  66.     notaAG=float((desviación_AG+21)/46*10)
  67.     print ("Otras cosas: {0}".format (notaAG))
  68.     #RUNNING ORDER
  69.     desviación_RO=random.randint(-7,7)
  70.     globals()[concursante] ["favoritidad"]+= desviación_RO
  71.     notaRO=float((desviación_RO+21)/46*10)
  72.     print ("Running Order {0}".format (notaRO))
  73.     balance=desviación_RO+desviación_AG+desviación_Afinacion+desviación_PE
  74.     nota_media=((notaRO+notaAG+notaAfinacion+notaPE)/4)
  75.     print ("La nota media de la actuación en directo ha sido de {0}".format(nota_media))
  76.     if balance<0:
  77.         print ("Ha decepcionado la actuación en directo/n")
  78.     elif balance>0:
  79.         print ("La actuación en directo ha sorprendido/n")
  80.     favoritidades.append (globals()[concursante] ["favoritidad"])
  81.     while continuar !="s":
  82.         continuar=input("Pulsa s y dale a enter para continuar: ")
  83.     continuar="t"
  84.     RO+=1
  85. for votante in concursantes:
  86.     print("---------------", votante, "voting -----------------")
  87.     puntuables=copy.deepcopy(concursantes)
  88.     indice=puntuables.index(votante)
  89.     puntuables.remove(votante)
  90.     favoritidades_votante=copy.deepcopy(favoritidades)
  91.     del favoritidades_votante [indice]
  92.     lista=[]
  93.     puntuados=[]
  94.     i=-1
  95.     for puntuable in puntuables:
  96.         i+=1
  97.         favoritidad=favoritidades_votante [i]
  98.         n=0
  99.         while favoritidad>(n*10):
  100.             lista.append(puntuable)
  101.             n+=1
  102.     for puntuaje in ("12","10","8","7","6","5","4","3","2","1"):
  103.         puntuado=random.choice(lista)
  104.         while puntuado in puntuados:
  105.             puntuado=random.choice(lista)
  106.         (globals()[puntuado]["puntos"])+=int(puntuaje)
  107.         puntuados.append(puntuado)
  108.         print (puntuaje,"points go to", puntuado)
  109.     for concursante in concursantes:
  110.         print (globals()[concursante]["nombre"],"=====================",globals()[concursante]["puntos"])
  111.     while continuar !="s":
  112.         continuar=input("Pulsa s y dale a enter para continuar: ")
  113.     continuar="t"
  114. print ("*******************")
  115. print ("RESULTADOS FINALES")
  116. print ("********************")
  117. for concursante in concursantes:
  118.     print (globals()[concursante]["nombre"],"=====================",globals()[concursante]["puntos"])
  119. while continuar !="s":
  120.         continuar=input("Pulsa s y dale a enter para cerrar el programa: ")
  121. continuar="t"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement