[pyar] como validar cualquier elemento de una tupla?

criss pro crisspro en hotmail.com
Dom Mar 19 19:32:38 ART 2017


hola. creí que había entendido la logica del asunto, pero parece que aun hay algo que no capto bien. ¿Por qué razón no imprime el mensaje del siguiente código si en la entrada ingreso alguno de los valores de la tupla?, según yo estoy siguiendo el mismo principio de la solución que me dieron con el problema anterior. código:

while 1:
    print ("ingresa el animal correcto")
    entrada= input ()
    if (entrada==("conejo", "pato")):
        print ("es el animal correcto")

intenté quitando los paréntesis de los extremos en el if, pero tampoco logro resultado.
      como tercera alternativa jugué con la función in para que me dijiera si algún elemento de una tupla está en este caso, en la variable entrada, pero aparece un mensaje de error diciendo que la función in no permite tuplas al inicio sino solo cadenas. de allí me surgió una pregunta que quizás tenga que ver con la solución de mi problema y es: ¿’'Cómo le indico a python que 1. verifique si cualquier elemento de una tupla está en una cadena. 2. ¿cómo indico a python que me diga si todos los elementos de una tupla están contenido en una cadena?. nótese que no tengo problemas cuando se trata de un único valor sino cuando se trata de barios.

saludos.
From: criss pro<mailto:crisspro en hotmail.com>
Sent: Sunday, March 19, 2017 2:19 PM
To: Python Argentina<mailto:pyar en python.org.ar>
Subject: Re: [pyar] como validar cualquier elemento de una tupla?

perfecto!. ahora entiendo mejor, muchas gracias por la respuesta y las recomendaciones.
     Apropósito, pensaba que con cambiar el asunto y borrar el mensaje original del cuerpo podía responder al correo y quedar como mensaje nuevo, pero al parecer no, bueno XD.

un gran saludo.

From: fisa<mailto:fisadev en gmail.com>
Sent: Sunday, March 19, 2017 1:29 PM
To: Python Argentina<mailto:pyar en python.org.ar>
Subject: Re: [pyar] como validar cualquier elemento de una tupla?


Buenas! Lo que estás buscando es esto:

b = a.startswith(("mirar", "ver"))

Algo que es importante: el operador "or" es algo que opera sobre dos valores y te devuelve un resultado, como la suma o la resta. Cuando haces  a.startswith("mirar" or "ver"), no le estás pasando dos parámetros a startswith, le estás pasando un solo parámetro: el resultado de hacer "mirar" or "ver". Similar a lo que pasaría que si hicieses  a.startswith("mirar" + "ver").

Un detalle: no hace falta ponerle paréntesis a los True. Y mejor todavía: ni hace falta usar booleanos comparados contra True, tu if podría ser así:

    if b and c:

Finalmente, consejo de programación: conviene usar buenos nombres para las variables, para que puedas leer y mantener fácilmente tu código. "a", "b", "c", etc, no están buenos. En su lugar convendría usar cosas como "texto_ingresado", "quiere_ver", "al_mar", etc. Las letras son gratis, no te van a cobrar por usar más :)

Saludos!

On Sun, Mar 19, 2017, 13:12 criss pro <crisspro en hotmail.com<mailto:crisspro en hotmail.com>> wrote:
Hola. tengo una duda, basica, pero no logro hayar la solución.
nececito imprimir un mensaje si una cadena comienza con cualquiera de los elementos de una tupla. el código que uso es este:


while 1:
    a= input ()
    b= a.startswith ("mirar" or "ver")
    c= a.endswith ("mar")
    if b==(True) and c==(True):
        print ("es un mar azul, como todos los mares")

solo me funciona con la primera palabra, si cambio el operador “or” por comas, obtengo un error.

saludos.


_______________________________________________
pyar mailing list pyar en python.org.ar<mailto:pyar en python.org.ar>
http://listas.python.org.ar/listinfo/pyar

PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
--
fisa  -  Juan Pedro Fisanotti
________________________________
_______________________________________________
pyar mailing list pyar en python.org.ar
http://listas.python.org.ar/listinfo/pyar

PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar

________________________________
_______________________________________________
pyar mailing list pyar en python.org.ar
http://listas.python.org.ar/listinfo/pyar

PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20170319/5a720766/attachment-0001.html>


Más información sobre la lista de distribución pyar