elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Preguna de Novato Python Validacion
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Preguna de Novato Python Validacion  (Leído 948 veces)
supLord

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Preguna de Novato Python Validacion
« en: 4 Mayo 2016, 21:01 pm »

Hola señores quieria saber donde falla mi codigo.
opcion = 0
while opcion != 1 or opcion != 2:
         opcion = int(raw_input(" Introduzca opcion"))

Lo que sucede es que se me queda en el while y no sale.
 


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Preguna de Novato Python Validacion
« Respuesta #1 en: 4 Mayo 2016, 21:04 pm »

No es 'or', es 'and'. Siempre va a ser diferente de 1 o de 2.


En línea

supLord

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: Preguna de Novato Python Validacion
« Respuesta #2 en: 5 Mayo 2016, 16:35 pm »

¿Pero con el and no estoy obligando a que se cumplan ambas condiciones para salir del bucle? Necesito que cuando se cumpla una de las dos salga.
En línea

FurioMoltisanti

Desconectado Desconectado

Mensajes: 39



Ver Perfil
Re: Preguna de Novato Python Validacion
« Respuesta #3 en: 5 Mayo 2016, 17:21 pm »


while opcion != 1 or opcion != 2:

sería: mientras opcion sea diferente a 1 o opcion sea diferente a 2 ejecuta

el resultado es que cualquier numero va a ser diferente a 1 o a 2.


while opcion != 1 and opcion != 2:

sería: mientras opcion sea diferente a 1 y opcion sea diferente a 2 ejecuta

el resultado es que cuando el numero sea 1 o 2 terminara el bucle.

Espero que se entienda.
En línea

tincopasan


Desconectado Desconectado

Mensajes: 1.281

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: Preguna de Novato Python Validacion
« Respuesta #4 en: 5 Mayo 2016, 17:44 pm »

veo dos cosas que no haría, lo realizaría así:
Código
  1. opcion= int(input("Introduzca opcion: ") )
  2. while not (opcion == 1 or opcion == 2):
  3.    opcion = int(input("Introduzca opcion: "))
  4.  

o sea 1)opción no tiene valor hasta que el usuario se lo da
2) while se repite hasta que devuelve false, por eso en este caso uso while not opcion1 or opcion 2

edito: tercer error: va en el foro de script/python (no todos lo verán en cualquier lado, lo ví de casualidad)
« Última modificación: 5 Mayo 2016, 17:53 pm por tincopasan » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda novato Python
Scripting
Lauta 3 3,482 Último mensaje 17 Diciembre 2007, 19:30 pm
por Lauta
Python (novato) « 1 2 »
Scripting
5eth 10 5,848 Último mensaje 16 Abril 2011, 23:42 pm
por JuszR
duda novato python
Scripting
Karoleck 3 1,706 Último mensaje 22 Noviembre 2011, 12:48 pm
por Novlucker
AYUDA con un programa en python soy muy novato!!!
Scripting
d0menek0r 2 1,409 Último mensaje 5 Febrero 2012, 17:09 pm
por d0menek0r
[PYTHON] Ejercicio de novato
Ejercicios
K4sS- 2 2,737 Último mensaje 3 Octubre 2013, 15:34 pm
por zimmerman
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines