On 2009-05-07 01:01:57 -0700, Peter Otten <__pete...@web.de> said:
TomF wrote:
As a relative newcomer to Python, I like it a lot but I'm dismayed at
the difficulty of handling simple errors. In Perl if you want to
anticipate a file-not-found error you can simply do:
open($file) or die("open($file): $!");
and you get an intelligible error message. In Python, to get the same
thing it appears you need at least:
try:
f=open(file)
except IOError, err:
print "open(%s): got %s" % (file, err.strerror)
exit(-1)
Is there a simpler interface or idiom for handling such errors? I
appreciate that Python's exception handling is much more sophisticated
but often I don't need it.
-Tom
While you are making the transition you could write
from perl_idioms import open_or_die
f = open_or_die("does-not-exist")
with the perl_idioms module looking like
import sys
def open_or_die(*args):
try:
return open(*args)
except IOError, e:
sys.exit(e)
Peter
Thanks. Rolling my own error module for common errors may be the best
way to go.
-Tom
--
http://mail.python.org/mailman/listinfo/python-list