Queremos hablar sobre el ejercicio implementado en la clase con la condición AND.
Si se tiene en cuenta que el valor de las variables:
X: 15
Y: 20
Si se quiere cumplir las dos condicionales con el AND a través del ciclo IF, sería del siguiente modo:
if x>10 and y>15:
print("X es mayor que 10 y Y es mayor que 15")
Así se cumpliría que la variable X sea mayor a 10 y, asimismo, la variable Y sea mayor a 15. Con esto, entraría en el ciclo IF y se vería el mensaje; de lo contrario, sería el resultado False.
En programación, las estructuras condicionales son esenciales para tomar decisiones basadas en ciertas condiciones. Por ejemplo, al usar la instrucción IF en Python, se puede verificar si una variable cumple con una condición específica y ejecutar el código correspondiente.
¿Cómo se usa la estructura IF en Python?
Para utilizar el IF, primero se define una variable, por ejemplo, x = 10. Luego, se escribe la estructura condicional usando la palabra reservada IF seguida de la condición, como if x > 5:. Si esta condición es verdadera, se ejecuta el código dentro del IF, que debe estar indentado.
x =10if x >5:print("x es mayor que 5")
¿Qué pasa si la condición del IF es falsa?
Si la condición del IF no se cumple, se puede utilizar la instrucción else para manejar el caso contrario. Por ejemplo, si x es menor o igual a 5, se ejecutará el bloque de código dentro del else.
x =3if x >5:print("x es mayor que 5")else:print("x es menor o igual a 5")
¿Cómo se manejan múltiples condiciones?
Cuando hay múltiples condiciones, se puede usar elif (else if). Esto permite agregar condiciones adicionales entre if y else.
x =5if x >5:print("x es mayor que 5")elif x ==5:print("x es igual a 5")else:print("x es menor que 5")
¿Cómo se manejan múltiples condiciones en un solo IF?
Para evaluar múltiples condiciones en una sola sentencia IF, se pueden utilizar los operadores lógicos and y or. El operador and requiere que ambas condiciones sean verdaderas, mientras que el operador or requiere que al menos una condición sea verdadera.
x =15y =30if x >10 and y >25:print("x es mayor que 10 y y es mayor que 25")if x >10 or y >35:print("x es mayor que 10 o y es mayor que 35")
¿Qué es la negación en las condiciones?
La palabra reservada not se utiliza para negar una condición. Si una condición es verdadera, not la convierte en falsa, y viceversa.
x =15if not x >20:print("x no es mayor que 20")
¿Cómo se anidan las estructuras IF?
Los IF anidados permiten evaluar condiciones dentro de otras condiciones. Esto es útil para verificar múltiples niveles de requisitos.
isMember =Trueage =15ifisMember:if age >=15:print("Tienes acceso ya que eres miembro y mayor que 15")else:print("No tienes acceso ya que eres miembro, pero menor a 15 años")else:print("No eres miembro y no tienes acceso")
Que gran aporte! Gracias, me parecio muy limpio y practico. Encontre una forma de optimizarlo agregandole que vuelva a preguntar si el input no es correcto, y me parecio genial compartirlo.
print('BIENVENIDO AL JUEGO DE PIEDRA, PAPEL O TIJERA')player_1_name =input('JUGADOR 1 INGRESA TU NOMBRE: ')player_2_name =input('JUGADOR 2 INGRESA TU NOMBRE: ')valid_moves =['piedra','papel','tijera']player_1_move =input(player_1_name +' elige: piedra, papel o tijera: ')if player_1_move notin valid_moves:print(player_1_name +', elección no válida. Por favor, elija entre piedra, papel o tijera.') player_1_move =input(player_1_name +' elige: piedra, papel o tijera: ')player_2_move =input(player_2_name +' elige: piedra, papel o tijera: ')if player_2_move notin valid_moves:print(player_2_name +', elección no válida. Por favor, elija entre piedra, papel o tijera.') player_2_move =input(player_2_name +' elige: piedra, papel o tijera: ')if player_1_move == player_2_move:print('Empate!')elif(player_1_move =='piedra'and player_2_move =='tijera')or \
(player_1_move =='papel'and player_2_move =='piedra')or \
(player_1_move =='tijera'and player_2_move =='papel'):print('Gano', player_1_name)else:print('Gano', player_2_name)```print('BIENVENIDO AL JUEGO DE PIEDRA, PAPEL O TIJERA')player\_1\_name =input('JUGADOR 1 INGRESA TU NOMBRE: ')player\_2\_name =input('JUGADOR 2 INGRESA TU NOMBRE: ')valid\_moves = \['piedra','papel','tijera']player\_1\_move =input(player\_1\_name +' elige: piedra, papel o tijera: ')while player\_1\_move notin valid\_moves:  player\_1\_move = input(player\_1\_name + ', elección no válida. Por favor, elija entre piedra, papel o tijera: ')player\_2\_move =input(player\_2\_name +' elige: piedra, papel o tijera: ')while player\_2\_move notin valid\_moves:  player\_2\_move = input(player\_2\_name + ', elección no válida. Por favor, elija entre piedra, papel o tijera: ')if player\_1\_move == player\_2\_move:  print('Empate!')elif(player\_1\_move =='piedra'and player\_2\_move =='tijera')or \\
  (player\_1\_move == 'papel' and player\_2\_move == 'piedra') or \\  (player\_1\_move == 'tijera' and player\_2\_move == 'papel'):  print('Ganó', player\_1\_name)else:  print('Ganó', player\_2\_name)
Hola! Les comparto mi solución al reto:
Esta genial, te veoo en cada clase... ERES FANTASTICA!!
Muy buen ejercicio. Gracias
Cuando queremos establecer un condicional que realice una acción sencilla, podemos usar el "operador ternario" que consiste en compactar un if-else en una sola línea. Su sintaxis es:
condition_if_true if condition else condition_if_false
Por ejemplo
edad =21print("mayor de edad")if edad >18elseprint("menor de edad")
Gracias por el aporte compañero, conocía el condicional ternario en js pero en python no.
Muy útil, gracias!
import random
# Opciones disponibles
opciones =["piedra","papel","tijera"]# Función para determinar el ganador
def determinar_ganador(usuario, computadora):if usuario == computadora:return"Empate"elif(usuario =="piedra" and computadora =="tijera") or \
(usuario =="papel" and computadora =="piedra") or \
(usuario =="tijera" and computadora =="papel"):return"Ganaste"else:return"Perdiste"# Bucle principal del juego
whileTrue: # Elección del usuario
usuario =input("Elige piedra, papel o tijera (o 'salir' para terminar): ").lower()if usuario =="salir":breakif usuario not inopciones:print("Opción no válida. Intenta de nuevo.")continue # Elección de la computadora
computadora = random.choice(opciones)print(f"La computadora eligió: {computadora}") # Determinar el ganador
resultado =determinar_ganador(usuario, computadora)print(resultado)
Importación de Módulos: random se utiliza para seleccionar aleatoriamente la elección de la computadora.
Definición de Opciones: Se define una lista de opciones disponibles para el juego.
Función determinar_ganador: Esta función compara las elecciones del usuario y la computadora para determinar el resultado del juego.
while true ya se considera mala práctica en python, sólo con el while hace lo mismo
no es mala practica usar while true siempre cuando tengan en cuenta el break, sino ahi si se hace un blucle infinito
Yo hice la versión del juego pero de "The Biga Bang Theory". Espero que les guste:import <u>random</u>
# Definir las opcionesopciones = ["Piedra", "Papel", "Tijeras", "Lagarto", "Spock"]
# Reglas del juegoreglas = { "Piedra": ["Tijeras", "Lagarto"], "Papel": ["Piedra", "Spock"], "Tijeras": ["Papel", "Lagarto"], "Lagarto": ["Spock", "Papel"], "Spock": ["Tijeras", "Piedra"]}
def obtener_eleccion_computadora(): return <u>random</u>.choice(opciones)
def obtener_eleccion_usuario(): eleccion = "" while eleccion not in opciones: eleccion = input("Elige una opción (Piedra, Papel, Tijeras, Lagarto, Spock): ") return eleccion
def determinar_ganador(usuario, computadora): if usuario == computadora: return "Empate" elif computadora in reglas[usuario]: return "Ganaste" else: return "Perdiste"
def jugar(): print("¡Bienvenido a Piedra, Papel, Tijeras, Lagarto, Spock!") usuario = obtener_eleccion_usuario() computadora = obtener_eleccion_computadora() print(f"Tú elegiste: {usuario}") print(f"La computadora eligió: {computadora}") resultado = determinar_ganador(usuario, computadora) print(resultado)
if __name__ == "__main__": jugar()
import random
# Definir las opciones
opciones =["Piedra","Papel","Tijeras","Lagarto","Spock"]# Reglas del juego
reglas ={"Piedra":["Tijeras","Lagarto"],"Papel":["Piedra","Spock"],"Tijeras":["Papel","Lagarto"],"Lagarto":["Spock","Papel"],"Spock":["Tijeras","Piedra"]}def obtener_eleccion_computadora():return random.choice(opciones)def obtener_eleccion_usuario(): eleccion =""while eleccion not inopciones: eleccion =input("Elige una opción (Piedra, Papel, Tijeras, Lagarto, Spock): ")return eleccion
def determinar_ganador(usuario, computadora):if usuario == computadora:return"Empate" elif computadora in reglas[usuario]:return"Ganaste"else:return"Perdiste"def jugar():print("¡Bienvenido a Piedra, Papel, Tijeras, Lagarto, Spock!") usuario =obtener_eleccion_usuario() computadora =obtener_eleccion_computadora()print(f"Tú elegiste: {usuario}")print(f"La computadora eligió: {computadora}") resultado =determinar_ganador(usuario, computadora)print(resultado)if __name__ =="__main__":jugar()
gracias!!
Les comparto mi juego jejeje
print("Bienvenido a la mejor manera de decidir quien peleara primero contra Majin Buu")moves =["Piedra","Papel","Tijeras"]whileTrue: j1 =input("Jugador 1\nPiedra Papel O tijera? ").capitalize() j2 =input("Jugador 2\nPiedra Papel O tijera? ").capitalize()if j1 notin moves or j2 notin moves:print("""
Movimiento no valido, Por favor intentelo nuevamente\n\n""")elif j1 == j2:print("""
Empate\n\n""")elif j1 == moves[0]and j2 == moves[2]:print("""
Jugador 1 Gana\n\n""")elif j1 == moves[1]and j2 == moves[0]:print("""
Jugador 1 Gana\n\n""")elif j1 == moves[2]and j2 == moves[1]:print("""
Jugador 1 Gana\n\n""")else:print("""
Jugador 2 Gana\n\n""")```print("Bienvenido a la mejor manera de decidir quien peleara primero contra Majin Buu")moves = \["Piedra","Papel","Tijeras"]whileTrue: j1 =input("Jugador 1\nPiedra Papel O tijera? ").capitalize() j2 =input("Jugador 2\nPiedra Papel O tijera? ").capitalize()if j1 notin moves or j2 notin moves:print(""" Movimiento no valido, Por favor intentelo nuevamente\n\n""")elif j1 == j2:print(""" Empate\n\n""")elif j1 == moves\[0]and j2 == moves\[2]:print(""" Jugador 1 Gana\n\n""")elif j1 == moves\[1]and j2 == moves\[0]:print(""" Jugador 1 Gana\n\n""")elif j1 == moves\[2]and j2 == moves\[1]:print(""" Jugador 1 Gana\n\n""")else:print(""" Jugador 2 Gana\n\n""")
Buena referencia jaja!
Aqui mi aporte del juego piedra, papel o tijera
utilice un diccionario que tiene la llave y valor que le gana a que ejemplo la piedra le grana a la tijera (piedra : tijera)
y posterior a esto solo se pide ingresar la opcion al jugador y colocar las debidas condicionales con la busqueda en el diccionario:
opciones.get(jugador1) y se compara con la opción del otro jugador
print("Rock 👊 - Scissors ✌ - Paper 🖐")print("Player 1, please insert your name")player_1 =input()print("Welcome", player_1)print("¿Rock 👊 - Scissors ✌ - Paper 🖐?")move_p1 =input()print(player_1,"you chose", move_p1)print("Player 2, please insert your name")player_2 =input()print("Welcome", player_2)print("¿Rock 👊 - Scissors ✌ - Paper 🖐?")move_p2 =input()print(player_2,"you chose", move_p2)if move_p1 == move_p2:print("Its a tie")elif move_p1 =="Rock"and move_p2 =="Scissors":print(player_1,"you win")elif move_p1 =="Scissors"and move_p2 =="Paper":print(player_1,"you win")elif(move_p1 =="Paper"and move_p2 =="Rock"):print(player_1,"you win")else:print(player_2,"you win")```print("Rock 👊 - Scissors ✌ - Paper 🖐")print("Player 1, please insert your name")player\_1 =input()print("Welcome", player\_1)print("¿Rock 👊 - Scissors ✌ - Paper 🖐?")move\_p1 =input()print(player\_1,"you chose", move\_p1)print("Player 2, please insert your name")player\_2 =input()print("Welcome", player\_2)print("¿Rock 👊 - Scissors ✌ - Paper 🖐?")move\_p2 =input()print(player\_2,"you chose", move\_p2)if move\_p1 == move\_p2:print("Its a tie")elif move\_p1 =="Rock"and move\_p2 =="Scissors":print(player\_1,"you win")elif move\_p1 =="Scissors"and move\_p2 =="Paper":print(player\_1,"you win")elif(move\_p1 =="Paper"and move\_p2 =="Rock"):print(player\_1,"you win")else:print(player\_2,"you win")
¿Cómo validar los movimientos ?
Excelente!
print("Rock - Scissors - Paper")print("Jugador 1, por favor ingresa tu nombre")jugador_1 =input()print("Bienvenido", jugador_1)print("¿Rock - Scissors - Paper?")movimiento_j1 =input().strip().capitalize()# capitaliza la entrada para hacerla consistenteprint(jugador_1,"has elegido", movimiento_j1)print("Jugador 2, por favor ingresa tu nombre")jugador_2 =input()print("Bienvenido", jugador_2)print("¿Rock - Scissors - Paper?")movimiento_j2 =input().strip().capitalize()# capitaliza la entrada para hacerla consistenteprint(jugador_2,"has elegido", movimiento_j2)if movimiento_j1 == movimiento_j2:print("Es un empate")elif(movimiento_j1 =="Rock"and movimiento_j2 =="Scissors")or(movimiento_j1 =="Scissors"and movimiento_j2 =="Paper")or(movimiento_j1 =="Paper"and movimiento_j2 =="Rock"):print(jugador_1,"has ganado")elif(movimiento_j2 =="Rock"and movimiento_j1 =="Scissors")or(movimiento_j2 =="Scissors"and movimiento_j1 =="Paper")or(movimiento_j2 =="Paper"and movimiento_j1 =="Rock"):print(jugador_2,"has ganado")else:print("Entrada inválida. Por favor, inténtalo de nuevo.")```print("Rock - Scissors - Paper")23print("Jugador 1, por favor ingresa tu nombre")4jugador\_1 =input()5print("Bienvenido", jugador\_1)67print("¿Rock - Scissors - Paper?")8movimiento\_j1 =input().strip().capitalize()# capitaliza la entrada para hacerla consistente9print(jugador\_1,"has elegido", movimiento\_j1)1011print("Jugador 2, por favor ingresa tu nombre")12jugador\_2 =input()13print("Bienvenido", jugador\_2)1415print("¿Rock - Scissors - Paper?")16movimiento\_j2 =input().strip().capitalize()# capitaliza la entrada para hacerla consistente17print(jugador\_2,"has elegido", movimiento\_j2)1819if movimiento\_j1 == movimiento\_j2:20print("Es un empate")21elif (movimiento\_j1 =="Rock"and movimiento\_j2 =="Scissors")or(movimiento\_j1 =="Scissors"and movimiento\_j2 =="Paper")or(movimiento\_j1 =="Paper"and movimiento\_j2 =="Rock"):22print(jugador\_1,"has ganado")23elif (movimiento\_j2 =="Rock"and movimiento\_j1 =="Scissors")or(movimiento\_j2 =="Scissors"and movimiento\_j1 =="Paper")or(movimiento\_j2 =="Paper"and movimiento\_j1 =="Rock"):24print(jugador\_2,"has ganado")25else:26print("Entrada inválida. Por favor, inténtalo de nuevo.")
Las **estructuras condicionales** en Python te permiten tomar decisiones en tu código basadas en condiciones específicas. Estas estructuras ejecutan bloques de código diferentes dependiendo de si una condición se evalúa como True o False.
### Estructuras Condicionales en Python
1. **if**: Evalúa una condición. Si la condición es True, ejecuta el bloque de código correspondiente.
2. **elif** (else if): Se utiliza para evaluar múltiples condiciones. Si la condición anterior es False, se evalúa la siguiente condición.
3. **else**: Se ejecuta si todas las condiciones anteriores son False.
### Sintaxis Básica
if condición:  \# Bloque de código si la condición es Trueelif otra\_condición:  \# Bloque de código si la primera condición es False y esta es Trueelse:  \# Bloque de código si todas las condiciones anteriores son False
### Ejemplo Simple:
edad =18if edad >=18:  print("Eres mayor de edad.")else:  print("Eres menor de edad.")
En este ejemplo, si la variable edad es mayor o igual a 18, se imprime "Eres mayor de edad". De lo contrario, se imprime "Eres menor de edad".
### Uso de elif para Múltiples Condiciones:
nota =85if nota >=90:  print("Sobresaliente")elif nota >=80:  print("Notable")elif nota >=70:  print("Aprobado")else:  print("Reprobado")
En este caso, dependiendo del valor de nota, se imprime la calificación correspondiente. Si la nota es 85, se imprime "Notable".
### Condicionales Anidadas:
Puedes anidar estructuras if, elif, y else dentro de otras para crear condiciones más complejas.
edad =20licencia =Trueif edad >=18:  if licencia:  print("Puedes conducir.")  else:  print("Necesitas una licencia para conducir.")else:  print("No tienes la edad suficiente para conducir.")
Aquí, primero se verifica si la persona es mayor de edad. Si lo es, se verifica si tiene licencia de conducir. Dependiendo de estas dos condiciones, se decide si puede conducir o no.
### Operadores Lógicos en Condicionales:
Puedes usar operadores lógicos como and, or, y not para combinar varias condiciones en una sola.
edad =25tiene\_permiso =Trueif edad >=18and tiene\_permiso:  print("Puedes entrar al evento.")else:  print("No puedes entrar al evento.")
En este ejemplo, la persona solo puede entrar al evento si es mayor de edad y tiene permiso. Si cualquiera de estas condiciones es False, no se le permitirá la entrada.
Python también permite escribir condicionales simples en una sola línea usando el operador ternario.
mensaje ="Mayor de edad"if edad >=18else"Menor de edad"print(mensaje)
Este código es equivalente al ejemplo anterior, pero en una sola línea. Si edad >= 18, mensaje será "Mayor de edad". De lo contrario, será "Menor de edad".
### Ejemplo Completo:
temperatura =30if temperatura >30:  print("Hace mucho calor.")elif20<= temperatura <=30:  print("El clima es agradable.")elif10<= temperatura <20:  print("Hace un poco de frío.")else:  print("Hace mucho frío.")
En este ejemplo, dependiendo de la temperatura, se imprime un mensaje que describe cómo está el clima. La estructura elif permite evaluar varios rangos de temperatura.
Las estructuras condicionales son fundamentales para controlar el flujo de ejecución en los programas, permitiendo que el código tome decisiones dinámicamente según las condiciones dadas.
print("Gracias por jugar, elija piedra, papel o tijera")
Jugador1 = input("Jugador1 : ¿Piedra, papel o tijera?")
Jugador2 = input("Jugador2 : ¿Piedra, papel o tijera?")
if Jugador1 == Jugador2:
print("Empate")
elif Jugador1 == "piedra" and Jugador2 == "tijera":
print("Jugador1 gana")
elif Jugador1 == "piedra" and Jugador2 == "papel":
print("Jugador2 gana")
elif Jugador1 == "papel" and Jugador2 == "piedra":
print("Jugador1 gana")
elif Jugador1 == "papel" and Jugador2 == "tijera":
print("Jugador2 gana")
elif Jugador1 == "tijera" and Jugador2 == "piedra":
print("Jugador2 gana")
elif Jugador1 == "tijera" and Jugador2 == "papel":
print("Jugador1 gana")
Hola buen dia comparto mi codigo para el reto de piedra papel o tijera
Hola dejo mi ejercicio, acá implemente de manera sencilla el uso del modulo random para el segundo jugador que es la computadora , el condicional sí el jugador no escribe bien una opción que vuelva a ingresar y el uso de los condicionales anidados junto los operadores lógicos AND y OR. La verdad que hasta no hacer el ejercicio creyendo que entendía los ejercicios de mis compañeros con tan solo verlos, me di cuenta de los pequeños detalles y la logica al momento de crear código que no entendia tanto jeje, muy bueno los otros ejemplos. si alguien tiene mas data como funciona la lógica con los módulos (%) bien recibida será.
import random
print("Bienvenido al juego de piedra, papel o tijera.")options=["piedra","papel","tijera"]jugador=input("ingresa una opcion: piedra, papel, tijera: ").lower()if jugador notin options:print("no es una opcion correcta, ingresa de nuevo una opcion")else: computadora=random.choice(options)print(f"has elegido {jugador}")print(f"la computadora ha elegido {computadora}")if jugador == computadora:print("Es un empate")elif(jugador =="piedra"and computadora =="tijera")or \
(jugador =="papel"and computadora =="piedra")or \
(jugador =="tijera"and computadora =="papel"):print("le has ganado a la computadora")else:print("te ha vencido la computadora")```import randomprint("Bienvenido al juego de piedra, papel o tijera.")options=\["piedra","papel","tijera"]jugador=input("ingresa una opcion: piedra, papel, tijera: ").lower()if jugador notin options:print("no es una opcion correcta, ingresa de nuevo una opcion")else: computadora=random.choice(options)print(f"has elegido {jugador}")print(f"la computadora ha elegido {computadora}")if jugador == computadora:print("Es un empate")elif(jugador =="piedra"and computadora =="tijera")or \ (jugador =="papel"and computadora =="piedra")or \ (jugador =="tijera"and computadora =="papel"):print("le has ganado a la computadora")else:print("te ha vencido la computadora")
Los diccionario se usan en los correos, correo: nombre, Apellido, Telefono, Correo de recuperacion.
Tambien se usa en las apuestas:
Apuesta : partido: Datos de partido:fecha,hora, lugar, cantidad apostada, score