{Hola en este ejemplo de python mostrare un gran juego clasico
actualizado el cual es piedra papel o tijera gran clásico
verdad, quien no lo jugo xd si te preguntas en que modo se actualiza
ahora ya no solo son las opciones clasicas de piedra papel o tijera
si no que ahora son piedra papel tijera lagarto o spock después de
ser tres opciones que tenian ventaja desventaja y empate
ahora son 5 que tambien las tienen, quieres saber ¿como?
En esta imagen se muestra como se juega
Basándonos en la imagen podriamos crear el juego
aqui el codigo:
import random # Tipo enumerado de los posibles valores asociados a un código (PIEDRA, PAPEL, TIJERA, LAGARTO, SPOCK) = range(5) # Valores ordenados por posición valores = ["PIEDRA", "PAPEL", "TIJERA", "LAGARTO", "SPOCK"] # Reglas del juego. La clave representa la posición en el vector de valores. El valor de cada clave es la manera en que un elemento vence a otro y los elentos a los que puede vencer. # Por ejemplo, la posición 0 representa PIEDRA. PIEDRA aplasta a LAGARTO y PIEDRA aplasta a TIJERA reglas = {0: [["aplasta", "aplasta"],[LAGARTO, TIJERA]], 1: [["tapa", "desautoriza"],[PIEDRA, SPOCK]], 2: [["corta", "decapita"],[PAPEL, LAGARTO]], 3: [["envenena", "come"],[SPOCK, PAPEL]], 4: [["rompe", "vaporiza"],[TIJERA, PIEDRA]]} (GANAUSUARIO, GANAMAQUINA, EMPATE) = range(3) # Obtiene una cadena de texto a partir del código de la tirada # Ej: valorTexto(0) = PIEDRA def valorTexto(codigo): return valores[codigo] # Devuelve el código de la tirada a partir de la cadena de texto de la tirada # Ej: textoValor("PIEDRA") = 0 def textoValor(texto): for i, valor in enumerate(valores): if (texto == valor): return i # Tirada de la máquina def sacaMaquina(): tirada = random.randint(0,5) return tirada; # Tirada del usuario def sacaUsuario(): tirada = "" while not tirada in valores: tirada = raw_input("Introduce una jugada válida (PIEDRA, PAPEL, TIJERA, LAGARTO, SPOCK): ") return textoValor(tirada); # Valida la jugada def juego(usuario, maquina): if maquina in reglas[usuario][1]: return GANAUSUARIO elif usuario in reglas[maquina][1]: return GANAMAQUINA else: return EMPATE # Explica la jugada # Ej: explica(TIJERA, PAPEL) = def explica(ganador, perdedor): for i, valor in enumerate(reglas[ganador][1]): if (perdedor == valor): print valorTexto(ganador), reglas[ganador][0][i], valorTexto(perdedor) ######################## ### CUERPO PRINCIPAL ### ######################## # Tiradas de los usuarios usuario = sacaUsuario() maquina = sacaMaquina() print valorTexto(usuario), "VS", valorTexto(maquina) # Comprueba la jugada y muestra el resultado resultado = juego(usuario, maquina) if resultado == GANAUSUARIO: explica(usuario, maquina) print "¡Has ganado!" elif resultado == GANAMAQUINA: explica(maquina, usuario) print "¡Has perdido!" else: print "¡Empate!"
quieres aprender mas a fondo como se edito este juego en python
aconsejo este curso: Introduccion a la programacion python
Aprendes bien en el curso, esta apenas y fue la tercer tarea.
Descargar codigo:
}