question about try/except blocks
Devin Jeanpierre
jeanpierreda at gmail.com
Thu May 2 22:23:11 EDT 2013
On Thu, May 2, 2013 at 9:54 PM, J <dreadpiratejeff at gmail.com> wrote:
> Would it be better to wrap the call and catch the OSError there, or
> wrap the whole with open() block in the function itself?
>
> My thought is to wrap the with open() call in the function so that I'm
> not wrapping the function call every time I use the class somewhere,
> but then I am not sure of that as it leads to nested try blocks like
> so:
It definitely shouldn't be done that way, since you might catch
exceptions in other circumstances too. Try this:
try:
f = open(dest, 'wb', 0)
except OSError as exc:
...
with f:
try:
...
except IOError as exc:
...
else:
...
-- Devin
> try:
> with open(dest, 'wb', 0) as outfile:
> try:
> stuff
> except IOError as exec:
> more stuff
> else:
> other stuff
> except OSError as exc:
> error handling stuff
> return False
>
>
> I think, functionally, that should work, but should nested try/except
> blocks be avoided?
More information about the Python-list
mailing list