Introducción y primeros pasos con Python
¿Por qué aprender a programar en Python?
Accede a la versión más actualizada de este contenido
Herramientas del curso
Tu primer programa con Python
Herramientas para programar con Python
Playgrounds: Te doy la bienvenida a los ejercicios interactivos
Variables
Playgrounds: Modifica el valor de una variable
Quiz: Introducción y primeros pasos con Python
Tipos de datos en Python
Tipos de datos
Strings
Numbers
Booleans
Transformación de tipos
Playgrounds: Imprime el formato adecuado
Operadores y condicionales
Operadores aritméticos
Operadores de comparación
Comparación de números flotantes
Operadores lógicos: and y or
Operador lógico not
Condicionales
Proyecto: condicionales
Playgrounds: Identifica si un número es par o impar
Listas y diccionarios
String recargado
Indexing y slicing
Listas
Métodos de listas
Playgrounds: Agrega, modifica y elimina elementos de una lista
Tuplas
Proyecto: tuplas
Diccionarios: definición y lectura
Diccionarios: inserción y actualización
Playgrounds: Agrega, modifica y elimina elementos de un diccionario
Ciclos
Loops: While
Loops: For
Playgrounds: Agrega solo los números positivos de una lista
Ciclos anidados
¡Es tu turno: crea un tutorial!
Cierre
Proyecto: aplicando ciclos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Aportes 569
Preguntas 17
Si utilizan el metodo lower()
va a transformar todo el texto en minusculas por si el usuario escribe con mayusculas alguna letra
user_option = user_option.lower()
Mi solución con operadores lógicos ‘and’ y ‘or’ para hacer menos líneas de código:
<userUno = input('Choose Piedra Papel o Tijera. Only One option ')
userDos = input(
'Choose Piedra Papel o tijera. Only one option, para el otro jugador ')
# // piedra gana a tijera
# // tijera gana a papel
# // papel gana a piedra
if userUno == userDos:
print('empate')
elif userUno == 'piedra' and userDos == 'tijera':
print('Gana UserUno')
elif userUno == 'tijera' and userDos == 'papel':
print('UserUno gana')
elif userUno == 'papel' and userDos == 'piedra':
print('UserUno gana')
else:
print('User2 Gana')
>
los avanzados deberian no usar aportes tan avanzados ya que confunden a ciertas personas que esperan un buen y entendible ademas de basico aporte para poder entender algo, se les agradece la intencion de mostrar que saben mucho
No entedí nada y no me parece que haya usuarios que ponen soluciones más avanzadas a este nivel. Qué bueno que sepan, pero bajénle a su ego. No confundan a los que vamos apenas aprendiendo.
dónde está mi antiguo profe, este no me gusta se enreda mucho y lo enreda a uno
Este seria el codigo para el juego de piedra papel o tijera
def main():
# Iniciamos dando una explicacion breve del programa
print('JUGUEMOS: PIEDRA, PAPEL O TIJERA!')
print(' ')
print('*'*60)
print(' ')
print('INSTRUCCIONES')
print(' ')
print('El juego consiste en la participacion de 2 jugadores')
print('Cada jugador elije una de las opciones')
print('Las combinaciones ganadoras son las siguientes: ')
print('- Piedra gana a tijera')
print('- Tijera gana a papel')
print('- Papel gana a piedra')
print(' ')
print('*'*60)
print(' ')
print('Elije una de las opciones teniendo en cuenta que:')
print('1 - Piedra')
print('2 - Tijera')
print('3 - Papel')
print(' ')
print('*'*60)
print(' ')
print('ELECCION')
print(' ')
# Solicitamos los valores de los 2 jugadores
gamer1 = input('Eleccion del jugador 1: ')
gamer1 = int(gamer1)
if gamer1 == 1:
print('Piedra')
elif gamer1 == 2:
print('Tijera')
elif gamer1 == 3:
print('Papel')
else:
print('Eleccion no valida')
gamer2 = input('Eleccion del jugador 2: ')
gamer2 = int(gamer2)
if gamer2 == 1:
print('Piedra')
elif gamer2 == 2:
print('Tijera')
elif gamer2 == 3:
print('Papel')
else:
print('Eleccion no valida')
#Realizamos el proceso logico para determinar quien es el ganador
print(' ')
print('*'*60)
print(' ')
print('RESULTADO')
print(' ')
if gamer1 == 1 and gamer2 == 2:
print('El ganador es el jugador 1')
print(' ')
print('FELICITACIONES')
elif gamer1 == 1 and gamer2 == 3:
print('El ganador es el jugador 2')
print(' ')
print('FELICITACIONES')
elif gamer1 == 2 and gamer2 == 3:
print('El ganador es el jugador 1')
print(' ')
print('FELICITACIONES')
elif gamer1 == 2 and gamer2 == 1:
print('El ganador es el jugador 2')
print(' ')
print('FELICITACIONES')
elif gamer1 == 3 and gamer2 == 1:
print('El ganador es el jugador 1')
print(' ')
print('FELICITACIONES')
elif gamer1 == 3 and gamer2 == 2:
print('El ganador es el jugador 2')
print(' ')
print('FELICITACIONES')
elif gamer1 == gamer2:
print('Es un empate')
print(' ')
print('FELICITACIONES')
else:
print('Elecciones no validas vuelva a intentarlo')
if (__name__ == '__main__'):
main()
Asi se veria en consola este codigo
UN APORTE INTERESANTE…
esta fue mi solución
"""
_______________________________________________
reglas del juego
_______________________________________________
piedra gana a tijeras
tijeras gana a papel
papel gana piedra
"""
# eleccion de los jugadores
playerOption = input(
'elige una de las siguientes opciones. piedra, papel o tijeras :')
pcOption = 'piedra'
# condiciones del juego con las cuales el j1 gana
condicion1 = playerOption == 'tijeras' and pcOption == 'papel'
condicion2 = playerOption == 'papel' and pcOption == 'piedra'
condicion3 = playerOption == 'piedra' and pcOption == 'tijeras'
# logica del juego
if condicion1 or condicion2 or condicion3:
print('juego terminado, resultado: el jugador gana')
else:
if playerOption == pcOption:
print('juego terminado, resultado: empate')
else:
print('juego terminado, resultado: el pc gana')
Les comparto la manera en que lo desarrolle
import random
# Definiendo el diccionario
option = {
'1' : 'Piedra',
'2' : 'Papel',
'3' : 'Tijera',
}
# Eleccion de los jugadores
user_option = input(''''
PIEDRA PAPEL O TIJERA
A jugar!!!!
Elige:
1 para piedra
2 para papel
3 para tijera
=> ''')
print('Elegiste', option[user_option])
computer_option = str(random.randint(1,3))
print('El computador elige', option[computer_option])
# Condiciones en las que el jugador gana
escenario1 = user_option == '1' and computer_option == '3'
escenario2 = user_option == '2' and computer_option == '1'
escenario3 = user_option == '3' and computer_option == '2'
# Resultado del juego
if user_option == computer_option:
print('EMPATE!')
else:
if escenario1 or escenario2 or escenario3:
print('GANASTE!')
else:
print('PERDISTE')
import random
# Valores de opciones del Jankenpo
dict_options = {1: "Piedra", 2: "Papel", 3: "Tijera"}
# Captura de valor random de la computadora
index_computer = random.randint(1, 3)
option_computer = dict_options[index_computer]
# Set de opciones y captura de valor del usuario
str_option = """
--------------
** JANKENPO **
--------------
1: Piedra
2: Papel
3: Tijera
--------------"""
print(str_option)
index_user = int(input("Ingrese opción => "))
print("-" * 14)
option_user = dict_options[index_user]
# Evaluación de la jugada
if option_user == option_computer:
message = "Empate!"
emoji = "\U0001F611"
elif (option_user == "Papel" and option_computer == "Piedra") or \
(option_user == "Piedra" and option_computer == "Tijera") or \
(option_user == "Tijera" and option_computer == "Papel"):
message = "Ganaste!"
emoji = "\U0001F600"
else:
message = "Perdiste!"
emoji = "\U0001F97A"
# Imprimir resultado
print("-" * 14)
print("** RESULTADO **")
print("-" * 14)
print(message, emoji)
print("Computadora =>", option_computer)
print("Usuario =>", option_user)
Este es mi Codigo, selecciona de manera aleatoria para la computadora la opción entre “piedra papel o tijera” con la libreria “random”, la invoco con “random.choice” para que seleccione dentro de las opciones. También utilice el operador logico “and” para que se cumplieran las dos opciones dentro del “elif”.
Mi propuesta del juego piedra papel tijera:
Otra manera:
numero = int(input(“ingresa un numero =>”))
if numero == numero % 2:
print(“bien es numero par”)
elif numero != numero %2:
print(“es un numero impar”)
opcion=input("Elige tu opcion: ")
computer_option="piedra"
if opcion==computer_option:
print("Empate")
elif opcion=="piedra":
if computer_option=="papel":
print("Papel gana a piedra")
print("Gano la computadora")
else :
print("Piedra gana a tijera")
print("Gano el usuario")
elif opcion=="papel":
if computer_option=="piedra":
print("Papel gana a piedra")
print("Gano el usuario")
else :
print("Tijera gana a piedra")
print("Gano la computadora")
elif opcion=="tijera":
if computer_option=="papel":
print("Tijera gana a papel")
print("Gano el usuario")
else :
print("Piedra gana a tijera")
print("Gano la computadora")
else:
print("Escoge una opcion correcta")
user_option=input(“piedra, papel ó tijera =>”)
computer_option=“papel"
if user_option == computer_option:
print(”¡empate!")
elif user_option== “piedra”:
if computer_option==“tijera”:
print(“gana user, piedra gana a tijera”)
else:
print(“cumputer gana”)
elif user_option== “tijera”:
if computer_option==“papel”:
print(“gana user”)
else:
print(“gana computer”)
Este es un ejemplo sencillo de combinaciones. Para temas más complejos, considero que es útil esquematizar en un flujograma antes de escribir el código.
EN ESTE PUNTO SE REVISA TODA LA LOGICA REALIZAD AL EJERCICIO…
import random
options = [1, 2 , 3]
user = int(input("Elige 1 para piedra, 2 para papel o 3 para tijera "))
pc = random.choice(options)
if user == pc:
print(pc)
print("Empate")
elif user == 1:
if pc == 2:
print(pc)
print("Perdiste")
if pc == 3:
print(pc)
print("Ganaste")
elif user == 2:
if pc == 1:
print(pc)
print("Ganaste")
if pc == 3:
print(pc)
print("Perdiste")
elif user == 3:
if pc == 1:
print(pc)
print("Perdiste")
if pc == 2:
print(pc)
print("Ganaste")
else:
print("Entrada invalida")
Agrego este código para el ejemplo, a ver si le encuentran fallos:
import random as rnd
opciones = ["piedra","papel","tijera"]
resultados = ['Gana el usuario :)', 'Gana la PC :(', 'Es un empate!', 'Pierde el usuario por elección inválida']
pc_choice = rnd.randint(1,3)
usr_choice = int(input('Escriba el número de una opción para jugar: \n1-> Piedra \n2-> Papel \n3-> Tijera\n'))
print('Opcion elegida por pc \n',opciones[pc_choice-1])
#Si son iguales es empate
if usr_choice not in (1,2,3):
eval = 3
#Evaluamos los resultados según las posiciones en la lista de opciones
if pc_choice == usr_choice:
eval = 2
#Si la resta de las opciones es 1 o -2 gana la pc
elif pc_choice - usr_choice == 1 or pc_choice - usr_choice == -2:
eval = 1
else:
eval = 0
#Si el usuario eligió otro número
if usr_choice <= len(opciones):
print('Opción de usuario:\n', opciones[usr_choice-1])
else:
eval = 3
print('El resultado es:\n', resultados[eval])
Les paso mi codigo de nuevo.
Yo lo hice un poco diferente.
Solo me faltò agregar el Random en la eleccion de la computadora.
<
print('Vamos a jugar Piedra papel o Tijeras. Elije tu arma.')
eleccion_jugador = int(input('Indica el numero de tu eleccion 1-Piedra 2-Papel 3 Tijeras: '))
eleccion_maquina = 'Piedra 🪨'
if eleccion_jugador == 1:
eleccion_jugador = 'Piedra 🪨'
print('Excelente elegiste ', eleccion_jugador)
elif eleccion_jugador == 2:
eleccion_jugador = 'Papel 📃'
print('Excelente elegiste ', eleccion_jugador)
elif eleccion_jugador == 3:
eleccion_jugador = 'Tijeras ✂️'
print('Excelente elegiste ', eleccion_jugador)
else:
print('Lo siento, no introduciste un valor valido. Intenta de nuevo')
print('Y tu oponente eligió ', eleccion_maquina)
if eleccion_jugador == eleccion_maquina:
print('Vaya. Parece que es uin empate, vamos a intentarlo de nuevo!')
elif (eleccion_jugador == 'Piedra 🪨' and eleccion_maquina == 'Tijeras ✂️') or (eleccion_jugador == 'Tijeras ✂️' and eleccion_maquina == 'Papel 📃') or (eleccion_jugador == 'Papel 📃' and eleccion_maquina == 'Piedra 🪨'):
print('Excelente! Vamos a Festejar!! Ganaste! 🥳🎊🎉')
else:
print('Rayos. Parece que ganó la Maquina. 🤕 Vamos a volver a intentarlo.')
>
user_option = input('piedra, papel o tijera => ')
computer_option = 'papel'
if user_option == computer_option:
print('Empate')
elif (user_option == 'piedra' and computer_option == 'tijera') or (user_option == 'papel' and computer_option == 'piedra') or (user_option == 'tijera' and computer_option == 'papel'):
print('¡Ganaste!')
else:
print('Perdiste :(')
Yo lo hice con un pequeño menú. Aplica a lo que hemos aprendido en el curso hasta ahorita. Es otra forma de hacerlo, para evitar las mayúsculas y minúsculas.
Otra cosa es que use la libreria random ¿Para qué? Random me da un número aleatorio. Así simulo la opción que la compitadora va a soltar.
No se preocupen los que no son muy avanzados. Solo tienen que importarla hasta arriba como import ramdom. E igualar la variable de la computadora a ese número aleatorio.
#Libreria para sacar un numero aleatorio
import random
#Ingreso de opción para el usuario
user_option = int(input("¡Juguemos a ... Piedra, papel o tijera!: \n\n 1) Piedra \n 2) Papel \n 3) Tijera \n\n ¿cuál es tu opción?: "))
#Ingreso de opción de la computadora, le digo que me genere un número aleatorio del 1 al 3 cada que se ejecute el programa.
computer_option = random.randint(1, 3)
#Computadora saca esta opción.
print(computer_option)
#Evaluamos con if
if(user_option==computer_option):
print("¡Empate!, wow, empataste a la computadora")
elif(user_option==1 and computer_option==2):
print("\nComputadora saca papel!\n")
print("¡Pierdes!... Computadora saca papel, papel envuelve piedra.")
elif(user_option==1 and computer_option==3):
print("\nComputadora saca tijera!\n")
print("¡Ganas!... Computadora sacó tijera, piedra rompe tijera")
elif(user_option==2 and computer_option==1):
print("\nComputadora saca piedra!\n")
print("¡Ganas!... Computadora sacó piedra, papel envuelve a la piedra")
elif(user_option==2 and computer_option==3):
print("\nComputadora saca tijera!\n")
print("¡pierdes!... Computadora sacó tijera, tijera rompe papel")
elif(user_option==3 and computer_option==1):
print("\nComputadora saca piedra!\n")
print("¡pierdes!... Computadora sacó piedra, piedra rompe tijera")
elif(user_option==3 and computer_option==2):
print("\nComputadora saca papel!\n")
print("¡ganas!... Computadora sacó papel, tijera rompe papel")
else:
print("Escoje una opción valida, ¡intentalo de nuevo!")
import random
opciones = ["piedra", "papel", "tijeras"]
eleccion_jugador = input("Elige entre piedra, papel o tijera =>")
eleccion_maquina = random.choice(opciones)
print(eleccion_maquina)
if eleccion_jugador == eleccion_maquina:
print("Es un hermoso empate")
elif eleccion_jugador == "piedra" and eleccion_maquina == "tijera":
print("Gano el humano")
elif eleccion_jugador == "papel" and eleccion_maquina == "piedra":
print("Gano el humano")
elif eleccion_jugador == "tijeras" and eleccion_maquina == "papel":
print("Gano el humano")
else:
print("Gano la pc")
input ("-----WELCOME TO THE GAME: ROCK, PAPER OR SCISSOR---- ")
user1_option= input("User 1, Choose an option: rock, paper or scissor ")
user2_option= input("User 2, Choose an option: rock, paper or scissor ")
if user1_option == user2_option:
print("Tie!")
elif user1_option=="scissor" and user2_option=="rock":
print("rock beats scissor")
elif user1_option=="paper" and user2_option=="rock":
print("paper beats rock")
elif user1_option=="scissor" and user2_option=="paper":
print("scissor beats paper")
elif user1_option=="rock" and user2_option=="scissor":
print("rock beats scissor")
elif user1_option=="rock" and user2_option=="paper":
print("paper beats rock")
elif user1_option=="paper" and user2_option=="scissor":
print("scissor beats paper")
else:
print("Ingrese otra respuesta")
import random
print(‘JUGUEMOS PIEDRA PAPEL O TIJERAS!!!’)
user = int(input(’\n Ingresa 1 para piedra, 2 para papel o 3 para tijera \n => '))
cpu = random.randint(1,3)
def juego():
if user == cpu:
print(’\n Empate’)
elif user == 1 and cpu == 3:
print(’\n Ganaste!!’)
elif user == 2 and cpu == 1:
print(’\n Ganaste!!’)
elif user == 3 and cpu == 2:
print(’\n Ganaste!!’)
else:
print(’\n Perdiste 😦((’)
def validandoUser():
if user == 1:
print(’\n Elegiste piedra’)
validandoCpu()
juego()
elif user == 2:
print(’\n Elegiste papel’)
validandoCpu()
juego()
elif user == 3:
print(’\n Elegiste tijeras’)
validandoCpu()
juego()
else:
print(’\n Escoge un valor valido’)
def validandoCpu():
if cpu == 1:
print(’ La computadora elige piedra’)
elif cpu == 2:
print(’ La computadora elige papel’)
elif cpu == 3:
print(’ La computadora elige piedra’)
validandoUser()
Mi aporte, espero les sirva🤓
Para este reto, decidí agregarle que el usuario ingrese su nombre, para que al final diga el nombre del usuario si gano. Importando el modelo random, y usando la función randint() podemos generar un numero aleatorio entre el 1 y el 3, y asignarle cada uno a piedra, papel o tijera. Tambien, convertir la opción del usuario a letras minúsculas para evitar errores al momento de comparar y validar si se ingresa una opción invalida.
<
### Piedra papel o tijera ###
#Mensaje de bienvenida
print("***BIENVENIDO A PIEDA PAPEL O TIJERA***")
#Le pedimos al usuario su nombre
username = input("Ingresa tu nombre: ")
#Inicia el juego, pedimos que digite una opcion
user_input = input("Chose your weapon!(Piedra, papel o tijera): ")
#Convertimos el input del usuario a letras minusculas para evitar errores en la comparación
user_op = str.lower(user_input)
print(f"{username}: {user_op}")
#Generamos la opcion de la computadora de manera aleatoria
import random
pc_input = random.randint(1,3)
#Asignamos cada numero aleatorio a piedra, papel o tijera
if pc_input == 1:
pc_op = 'piedra'
elif pc_input == 2:
pc_op = 'papel'
elif pc_input == 3:
pc_op = 'tijera'
#Validamos que el input del usuario sea correcto, si es incorrecto damos por ganador a computer por defecto
if user_op != 'piedra' and user_op != 'papel' and user_op != 'tijera':
print("Opcion invalida!\nComputer wins!")
elif user_op == pc_op: #caso empate
print(f"Computer: {pc_op}")
print("EMPATE!")
elif user_op == 'piedra': #caso usuario elige piedra
if pc_op == 'papel': # caso piedra vs papel
print(f"Computer: {pc_op}")
print("Papel le gana a piedra\nCOMPUTER WINS!")
elif pc_op == 'tijera': #caso piedra vs tijera
print(f"Computer: {pc_op}")
print(f"Piedra le gana a tijera\n{username} WINS!")
elif user_op == 'papel': #caso usuario elige papel
if pc_op == 'piedra': #caso papel vs piedra
print(f"Computer: {pc_op}")
print(f"Papel le gana a piedra\n{username} WINS!")
elif pc_op == 'tijera': # caso papel vs tijera
print(f"Computer: {pc_op}")
print("Tijera le gana a papel\nCOMPUTER WINS!")
elif user_op == 'tijera': #caso usuario elige tijera
if pc_op == 'piedra': #caso tijera vs piedra
print(f"Computer: {pc_op}")
print("Piedra le gana a tijera\nCOMPUTER WINS!")
elif pc_op == 'papel': #caso tijera vs papel
print(f"Computer: {pc_op}")
print("Tijera le gana a papel\n{username} WINS!")
>
mi aporte para el proyecto.
import random as rd
#proyecto piedra papel y tijera
print('''
1. piedra
2. papel
3. tijera
''')
opcion = input('escoje una opcion (0 para salir): ')
opcion = opcion.lower()
maquina = rd.randint(1,3)
empate = 0
user_wins = 0
computer_wins = 0
while opcion != '0':
if opcion == 'piedra' or opcion == '1':
opcion = 1
elif opcion == 'papel' or opcion == '2':
opcion = 2
elif opcion == 'tijera' or opcion == '3' or opcion =='tijeras':
opcion = 3
for i in range(1,4):
if maquina == opcion:
if maquina == 1:
maquina = 'piedra'
elif maquina == 2:
maquina = 'papel'
elif opcion == 3:
opcion = 'tijera'
print(f'la opcion de la maquina ha sido: {maquina}')
print('empate')
empate += 1
print(f'los empates han sido {empate}')
print(f'puntaje general {computer_wins} maquina contra {user_wins} usuario')
break
elif (maquina == 1 and opcion == 3) or (maquina == 2 and opcion == 1) or (maquina == 3 and opcion == 2):
if maquina == 1:
maquina = 'piedra'
elif maquina == 2:
maquina = 'papel'
elif maquina == 3:
maquina = 'tijera'
print(f'la opcion de la maquina ha sido: {maquina}')
print('maquina wins')
computer_wins += 1
print(f'la maquina ha ganado: {computer_wins} contra {user_wins} del usuario')
break
elif (maquina == 3 and opcion == 1) or (maquina == 1 and opcion == 2) or (maquina == 2 and opcion == 3):
if maquina == 1:
maquina = 'piedra'
elif maquina == 2:
maquina = 'papel'
elif maquina == 3:
maquina = 'tijera'
print(f'la opcion de la maquina ha sido: {maquina}')
print('user wins')
user_wins += 1
print(f'el usuario ha ganado {user_wins} contra {computer_wins} de la maquina')
break
opcion = input('escoje una opcion (0 para salir): ')
maquina = rd.randint(1,3)
print('\n')
Este es mi aporte:
import random
print("""
Bienvenido al juego piedra papel o tijera. A continuación elija una de las tres opciones y juege con la computadora para saber quien gana.
Las reglas son las siguientes:
- Piedra gana a Tijera
- Tijera gana a Papel
- Papel gana a Piedra
""""")
options = ("pierda", "papel", "tijera")
user_option = input("Elige una opción: ")
computer_option = random.choice(options)
print("User option: ", user_option)
print("Computer option: ", computer_option)
if user_option == computer_option:
print("Empate")
elif user_option == "piedra" and computer_option == "tijera":
print("Ganaste")
elif user_option == "papel" and computer_option == "piedra":
print("Ganaste")
elif user_option == "tijera" and computer_option == "papel":
print("Ganaste")
else:
print("La maquina te gano")
Le agregue una funcion llamada random que te da un numero o palabra al azar
Mi solución:
Esta es mi solución, es una manera distinta, ya que use una librería para generar la selección aleatoria.
from random import choice
print('Bienvenido al juego de piedra, papel y tijera.')
print('Por favor elija una opcion')
print('*' * 10)
print('1) Piedra')
print('2) Papel')
print('3) Tijera')
user_choice = int(input('Elige una opcion: '))
aleatorio = [1 , 2 , 3]
machine = choice(aleatorio)
print('*' * 10)
if user_choice == 1 and machine == 2:
print('Tu Eliges: Piedra')
print('Maquina Elige: Papel')
print('La maquina GANA')
elif user_choice == 1 and machine == 3:
print('Tu Eliges: Piedra')
print('La maquina Elige: Tijeras')
print('Tu ganas')
elif user_choice == 1 and machine == 1:
print('Tu Eliges: Piedra')
print('La Maquina Elige: Piedra')
print('Esto es un empate')
elif user_choice == 2 and machine == 2:
print('Tu Eliges: Papel')
print('Maquina Elige: Papel')
print('Esto es un empate')
elif user_choice == 2 and machine == 3:
print('Tu Eliges: Papel')
print('La maquina Elige: Tijeras')
print('La Maquina GANA. INTETAN OTRA VEZ')
elif user_choice == 2 and machine == 1:
print('Tu Eliges: Papel')
print('La Maquina Elige: Piedra')
print('TU GANAS MUY BIEN')
elif user_choice == 3 and machine == 2:
print('Tu Eliges: Tijera')
print('Maquina Elige: Papel')
print('TU GANAS MUY BIEN')
elif user_choice == 3 and machine == 3:
print('Tu Eliges: Tijera')
print('La maquina Elige: Tijeras')
print('Esto es un EMPATE')
elif user_choice == 3 and machine == 1:
print('Tu Eliges: Tijera')
print('La Maquina Elige: Piedra')
print('La Maquina GANA. INTETAN OTRA VEZ')
Maaa no sabia que Henry Martin también programaba, es un todo terreno jajaj gran clase
Esta es mi versión, es necesario importar el modulo " random ", para ello pueden ir a la sección de Packages y buscan el modulo random2
import random
user_option = input('Escoge: piedra, papel o tijera: ')
pc_option = random.choice(['tijera','piedra','papel'])
print(f"Computadora escoge: {pc_option}")
if user_option == pc_option:
print('Empate')
elif user_option == 'piedra' and pc_option == 'tijera':
print(f"User gana: {user_option} gana a {pc_option}")
elif user_option == 'tijera' and pc_option == 'papel':
print(f"User gana: {user_option} gana a {pc_option}")
elif user_option == 'papel' and pc_option == 'piedra':
print(f"User gana: {user_option} gana a {pc_option}")
else:
print(f"PERDISTE: {pc_option} gana a {user_option}")
Hola, comparto una versión de este juego que desarrollé usando el módulo random, el cual en su función choice permite elegir en cada iteración (ejecución del programa) una opción en automático.
#### Rock, Scissors and paper
import random
print()
print('Bienvenido al juego Piedra, Papelo o Tijera! \n')
user_option = input('Ingresa tu elección: ').capitalize()
print('elegiste: {}'.format(user_option))
print('Computador eligiendo...')
computer_options = ['Piedra', 'Papel', 'Tijera']
computer_option = random.choice(computer_options)
if user_option == computer_option:
print()
print('😆 Empate!!!')
print()
print('>>> El computador eligió "{}"'.format(computer_option))
elif ((user_option == 'Piedra') and (computer_option == 'Tijera')) or ((user_option == 'Tijera') and (computer_option == 'Papel')) or ((user_option == 'Papel') and (computer_option == 'Piedra')):
print()
print('🥳 Ganaste!!!\n>>> El computador eligió "{}"'.format(computer_option))
print()
else:
print()
print('😅 Perdiste !!!\n>>> El computador te ganó eligiendo "{}"'.format(computer_option))
print()
user_option = input('piedra, papel o tijera => ')
computer_option = 'papel'
if user_option == computer_option:
print('Empate!')
elif user_option == 'piedra':
if computer_option== 'tigera':
print('piedra gana a tijera')
print('user gana!')
else:
print('Papel gana a piedra')
print('computer gano!')
elif user_option == 'papel':
if computer_option == 'piedra':
print('papel gano a piedra')
print('user gano!')
else:
print('tijera gana a papel')
print('computer gana!')
elif user_option == 'tijera':
if computer_option == 'papel':
print('tijera gana a papel')
print('user gano!')
else:
print('piedra gana a tijera')
print('computer gana!')
sería importante, hacer menos código y más lógica:
Comparto como hice mi codigo.
import random
import time
def write_fx(frase):
for letra in frase:
print(letra, end='', flush=True)
time.sleep(0.100)
def play(num1, num2):
if num1 == num2:
time.sleep(1)
write_fx(' Nadie gana')
elif num1 == 'Tijeras' and num2 == 'Piedra' or num1 == 'Papel' and num2 == 'Tijeras' or num1 == 'Piedra' and num2 == 'Papel':
time.sleep(1)
write_fx(' La maquina gana')
elif num1 == 'Piedra' and num2 == 'Tijeras' or num1 == 'Tijeras' and num2 == 'Papel' or num1 == 'Papel' and num2 == 'Piedra':
time.sleep(1)
write_fx(' El jugador gana')
def run():
choices = ['Piedra', 'Papel', 'Tijeras']
write_fx ('''
Bienvenido a piedra, papel o tijeras
[*] Piedra
[*] Papel
[*] Tijera
Escribe cual va a escoger aca --> ''')
user_cs = input('').capitalize().strip()
comp_cs = random.choice(choices)
if user_cs not in choices:
print('\n Comando no valido')
time.sleep(1)
run()
play(user_cs, comp_cs)
time.sleep(1)
write_fx(f'\n la eleccion de la computadora fue {comp_cs}')
if __name__ == '__main__':
run()
Que genial proyecto!
Excelente proyecto 🤩
Tambien hice este pero a mi manera me guie tambien de un compañero
import random
def run():
opcion_jugador = input(" - piedra, papel o tijera: ")
opcion_jugador = opcion_jugador.strip().lower()
opcion_computador = ["piedra", "papel", "tijera"]
opcion_random_computador = random.choice(opcion_computador)
if opcion_jugador == opcion_random_computador:
print(" - !Empataste!")
elif opcion_jugador == "piedra" and opcion_random_computador == "papel":
print(" - ¡Perdiste!")
elif opcion_jugador == "papel" and opcion_random_computador == "tijera":
print(" - ¡Perdiste!")
elif opcion_jugador == "tijera" and opcion_random_computador == "piedra":
print(" - ¡Perdiste!")
elif opcion_jugador == "piedra" and opcion_random_computador == "tijera":
print(" - ¡Ganaste!")
elif opcion_jugador == "papel" and opcion_random_computador == "piedra":
print(" - ¡Ganaste!")
elif opcion_jugador == "tijera" and opcion_random_computador == "papel":
print(" - ¡Ganaste!")
else:
print(" - Escoge una opcion por favor")
print(" - La opcion de la maquina es " + opcion_random_computador)
if __name__ == "__main__":
run()
Alguien me podria ayudar , el codigo me sale a la perfeccion, sin embargo me aparecen lineas debajo, alguien sabe que es ?
💡💻 Les comparto mi solución al reto:
Utilicé los operadores lógicos “and” y “or” para ocupar menos líneas de código.
import random
user_option = input("🕹️ piedra, papel o tijera: ")
computer_option = random.choice(["piedra", "papel", "tijera"])
print(f"🧙 {user_option} vs {computer_option} 🤖")
if user_option == computer_option:
print("🟰 Empate!")
elif (
(user_option == "piedra" and computer_option == "tijera")
or (user_option == "papel" and computer_option == "piedra")
or (user_option == "tijera" and computer_option == "papel")
):
print("✅ Ganaste!")
else:
print("❌ Perdiste!")
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?