problema con condicional
Eduardo Matus
ematus en gmail.com
Sab Dic 27 21:41:00 CET 2008
sobre el try - except, acostumbrate a usarlos, son la mejor forma de manejar
este tipo de cosas..
es como por ejemplo
def div(num):
if num != 0:
return 1/num
else:
return 0
es feo, poco elegante y confuso sobre todo cuando tienes codigo mas
complejo..
pero si lo siguiente, es mucho mas simpe y abarca otros problemas que
pudiera ocurrir...
def div(num):
try:
return 1/num
except ValueError:
return 0
2008/12/27 Eduardo Matus <ematus en gmail.com>
> no funciona porque es
>
> try:
> os.remove(self.slidefile)
> print "borando"
> except IOError:
> pass
>
>
>
> 2008/12/27 Pablo Rodríguez <oinos en web.de>
>
> Eduardo Matus wrote:
>>
>>> esta linea es redundante:.... if os.path.exists(self.slidefile):
>>>
>>> con esto basta...
>>> try:
>>> os.remove(self.slidefile)
>>> print "Deleting " + self.slidefile
>>> except IError:
>>> pass
>>>
>>
>> Gracias por la respuesta, pero eso lo intenté y me daba un error, por el
>> siguiente caso: si el fichero no existe, trata de borrarlo (y no lo
>> consigue) e intenta imprimir (y lo consigue).
>>
>> Eso precisamente es lo que tengo que evitar. De ahí la solución de abajo.
>>
>> Lo que a mí no me parece tan lógico, pero será falta de experiencia, es
>> que tenga que envolver "os.remove(self.slidefile)" con "try" para evitar que
>> Python evalúe la expresión y dé un error.
>>
>> Gracias de nuevo,
>>
>>
>> Pablo
>>
>>
>> 2008/12/27 Pablo Rodríguez
>>>
>>>> [...]
>>>> if os.path.exists(self.slidefile):
>>>> try:
>>>> os.remove(self.slidefile)
>>>> except IError:
>>>> pass
>>>> print "Deleting " + self.slidefile
>>>>
>>> _______________________________________________
>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es
>> FAQ: http://listas.aditel.org/faqpyes
>>
>
>
>
> --
> _______________________________________
> Eduardo Andrés Matus Coquelet
> Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales
> Santiago, Chile.
> _______________________________________
>
> Celular: (07) 77113825
>
--
_______________________________________
Eduardo Andrés Matus Coquelet
Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales
Santiago, Chile.
_______________________________________
Celular: (07) 77113825
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es