[pyar] Responder: Resumen de pyar, Vol 118, Envío 41

Ra'ul Eduardo Massacese rmassacese en hotmail.com
Dom Dic 22 13:08:18 -03 2019


R crees ș ș

Enviado desde mi smartphone Sony Xperia™

---- pyar-request en python.org.ar escribió ----

Envíe los mensajes para la lista pyar a
        pyar en python.org.ar

Para subscribirse o anular su subscripción a través de la WEB
        http://listas.python.org.ar/listinfo/pyar

O por correo electrónico, enviando un mensaje con el texto "help" en
el asunto (subject) o en el cuerpo a:
        pyar-request en python.org.ar

Puede contactar con el responsable de la lista escribiendo a:
        pyar-owner en python.org.ar

Si responde a algún contenido de este mensaje, por favor, edite la
linea del asunto (subject) para que el texto sea mas especifico que:
"Re: Contents of pyar digest...". Además, por favor, incluya en la
respuesta sólo aquellas partes del mensaje a las que está
respondiendo.


Asuntos del día:

   1. Re: manejo de excepciones con "try" (criss pro)


----------------------------------------------------------------------

Message: 1
Date: Sat, 21 Dec 2019 01:42:01 +0000
From: criss pro <crisspro en hotmail.com>
To: "pyar en python.org.ar" <pyar en python.org.ar>
Subject: Re: [pyar] manejo de excepciones con "try"
Message-ID:
        <DM6PR14MB364749167A37E235A858CC4FDA2C0 en DM6PR14MB3647.namprd14.prod.outlook.com>

Content-Type: text/plain; charset="utf-8"

ahh, bien. voy entendiendo mejor.


gracias.

El 19/12/2019 a las 11:35, Brian Rodriguez escribió:
Yo lo escribiria asi...

try:
     n1 = float(input("\nIngrese el primer numero: "))
     n2 = float(input("\nIngrese el segundo numero: "))

     def divide(x,y):
          print(f"El resultado es: {x/y}")

      divide(n1,n2)

except:
    print("Error!")

Rodríguez Brian.


El mié., 18 dic. 2019 a las 23:46, criss pro (<crisspro en hotmail.com<mailto:crisspro en hotmail.com>>) escribió:

Ahh vale. ahora bien, ¡cuál es el problema en el código que puse que no captura todas las excepciones, solo la primera?, para la otra me da error igualmente.

El 18/12/2019 a las 17:35, Leandro Moreno escribió:
Buenas.

No se recomienda mucho escribir el codigo que necesitas basado en assertions. Te conviene chequear de antemano que los que vos queres se cumpla. Para el tema de parsing, te recomiendo usar la libreria argparse que viene viene con python.
https://docs.python.org/3/library/argparse.html#module-argparse

En el caso de la división por 0, lo que yo haria es chequear que el dividendo no lo sea.
if n2 == 0:
    print('No seas troll, no se puede dividir por cero')
    return

En mi opinion, no basar el flujo de una funcion en try, + except, hace el código mucho mas legible.

Espero haberte ayudado.

Regards.



Leandro Moreno
Full Stack Developer


El mié., 18 dic. 2019 a las 17:21, criss pro (<crisspro en hotmail.com<mailto:crisspro en hotmail.com>>) escribió:
Hola.


Estoy viendo la captura de excepciones, pero tengo una inquietud, ya que
en el código que dejo más abajo la cosa no va como supongo que debiese.
Ojo que si pongo la captura solo en la línea que causa el error de tipo
ZeroDivisionError funciona correctamente, no obstante quice capturar
todo el código bajo try para además atrapar errores al ingresar letras
en vez de números. Mi pregunta es si ¿es posible o adecuado poner un
único try para todo un programa y así evitar capturar excepciones trozo
a trozo, línea a línea?.


 try:
     print('primer número')
     n1= int(input())
     print('segundo número')
     n2= int(input())

     def divide (n1, n2):
         n1= n1
         n2= n2
         print('el resultado es: ', n1/n2)
except:
     print('ups. un error')
divide(n1, n2)


_______________________________________________
Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar<mailto:pyar en python.org.ar>
Sitio web: http://www.python.org.ar/

Para administrar la lista (o desuscribirse) entrar a http://listas.python.org.ar/listinfo/pyar

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



_______________________________________________
Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar<mailto:pyar en python.org.ar>
Sitio web: http://www.python.org.ar/

Para administrar la lista (o desuscribirse) entrar a http://listas.python.org.ar/listinfo/pyar

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

_______________________________________________
Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar<mailto:pyar en python.org.ar>
Sitio web: http://www.python.org.ar/

Para administrar la lista (o desuscribirse) entrar a http://listas.python.org.ar/listinfo/pyar

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



_______________________________________________
Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar<mailto:pyar en python.org.ar>
Sitio web: http://www.python.org.ar/

Para administrar la lista (o desuscribirse) entrar a http://listas.python.org.ar/listinfo/pyar

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/20191221/db3b63e7/attachment-0001.html>

------------------------------

Subject: Pié de página del digest

_______________________________________________
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/


------------------------------

Fin de Resumen de pyar, Vol 118, Envío 41
******************************************
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20191222/dab2dbfc/attachment.html>


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