Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #72950
| Path | csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!dedekind.zen.co.uk!zen.net.uk!hamilton.zen.co.uk!xlned.com!feeder5.xlned.com!newsfeed.xs4all.nl!newsfeed1a.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail |
|---|---|
| Return-Path | <python-python-list@m.gmane.org> |
| X-Original-To | python-list@python.org |
| Delivered-To | python-list@mail.python.org |
| X-Spam-Status | OK 0.000 |
| X-Spam-Evidence | '*H*': 1.00; '*S*': 0.00; 'value,': 0.04; 'finally:': 0.07; 'level,': 0.07; 'odd': 0.07; 'clause': 0.09; 'executed': 0.09; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; 'try:': 0.09; 'wrote': 0.14; 'block.': 0.16; 'cleanup,': 0.16; 'docs.': 0.16; 'occurs,': 0.16; 'precedence.': 0.16; 'received:80.91.229.3': 0.16; 'received:plane.gmane.org': 0.16; 'statement.': 0.16; 'variable.': 0.16; 'exception': 0.16; 'files.': 0.16; 'bit': 0.19; 'seems': 0.21; 'certainly': 0.24; 'regardless': 0.24; 'first,': 0.26; 'this:': 0.26; 'subject:/': 0.26; 'header:X-Complaints- To:1': 0.27; 'function': 0.29; 'except': 0.35; 'something': 0.35; 'really': 0.36; 'should': 0.36; 'to:addr:python-list': 0.38; 'received:71': 0.39; 'to:addr:python.org': 0.39; 'received:org': 0.40; 'even': 0.60; 'course': 0.61; 'finally': 0.65; 'frank': 0.68; 'subject:try': 0.84; 'subject::': 0.85; 'imagine': 0.93 |
| X-Injected-Via-Gmane | http://gmane.org/ |
| To | python-list@python.org |
| From | Dave Angel <davea@davea.name> |
| Subject | Re:try/except/finally |
| Date | Sat, 7 Jun 2014 21:59:04 -0500 (CDT) |
| Organization | news.gmane.org |
| References | <0a89c96d-de62-42ad-be48-6107ce10d215@googlegroups.com> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=UTF-8 |
| Content-Transfer-Encoding | 7bit |
| X-Gmane-NNTP-Posting-Host | pool-71-97-198-161.hstntx.dsl-w.verizon.net |
| X-Newsreader | PiaoHong.NewsGroup.Client.VIP:1.53 |
| X-BeenThere | python-list@python.org |
| X-Mailman-Version | 2.1.15 |
| Precedence | list |
| List-Id | General discussion list for the Python programming language <python-list.python.org> |
| List-Unsubscribe | <https://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe> |
| List-Archive | <http://mail.python.org/pipermail/python-list/> |
| List-Post | <mailto:python-list@python.org> |
| List-Help | <mailto:python-list-request@python.org?subject=help> |
| List-Subscribe | <https://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.10873.1402196293.18130.python-list@python.org> (permalink) |
| Lines | 48 |
| NNTP-Posting-Host | 2001:888:2000:d::a6 |
| X-Trace | 1402196293 news.xs4all.nl 2892 [2001:888:2000:d::a6]:54262 |
| X-Complaints-To | abuse@xs4all.nl |
| Xref | csiph.com comp.lang.python:72950 |
Show key headers only | View raw
Frank B <fbicknel@gmail.com> Wrote in message:
> Ok; this is a bit esoteric.
>
> So finally is executed regardless of whether an exception occurs, so states the docs.
>
> But, I thought, if I <return> from my function first, that should take precedence.
>
> au contraire
>
> Turns out that if you do this:
>
> try:
> failingthing()
> except FailException:
> return 0
> finally:
> return 1
>
> Then finally really is executed regardless... even though you told it to return.
>
> That seems odd to me.
>
The thing that's odd to me is that a return is permissible inside
a finally block. That return
should be at top level, even with the finally line. And of course
something else should be in the body of the finally
block.
If you wanted the finally block to change the return value, it
should do it via a variable.
retval = 0
try:
failingthing()
except FailException:
return retval
finally:
retval =1
return something
I imagine the finally clause was designed to do cleanup, like
closing files. And it certainly predated the with statement.
--
DaveA
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
try/except/finally Frank B <fbicknel@gmail.com> - 2014-06-06 10:30 -0700
Re: try/except/finally Roy Smith <roy@panix.com> - 2014-06-06 13:39 -0400
Re: try/except/finally Frank B <fbicknel@gmail.com> - 2014-06-06 10:47 -0700
Re: try/except/finally Ned Batchelder <ned@nedbatchelder.com> - 2014-06-06 14:22 -0400
Re: try/except/finally Ethan Furman <ethan@stoneleaf.us> - 2014-06-07 15:49 -0700
Re: try/except/finally Chris Angelico <rosuav@gmail.com> - 2014-06-08 09:47 +1000
Re: try/except/finally Roy Smith <roy@panix.com> - 2014-06-07 20:12 -0400
Re: try/except/finally Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-06-08 02:10 +0100
Re: try/except/finally Roy Smith <roy@panix.com> - 2014-06-07 21:32 -0400
Re: try/except/finally Marko Rauhamaa <marko@pacujo.net> - 2014-06-08 10:12 +0300
Re: try/except/finally Joshua Landau <joshua@landau.ws> - 2014-06-08 18:57 +0100
Re: try/except/finally Ian Kelly <ian.g.kelly@gmail.com> - 2014-06-08 12:07 -0600
Re: try/except/finally Ian Kelly <ian.g.kelly@gmail.com> - 2014-06-08 12:02 -0600
Re: try/except/finally Rustom Mody <rustompmody@gmail.com> - 2014-06-07 20:58 -0700
Re: try/except/finally Thomas Rachel <nutznetz-0c1b6768-bfa9-48d5-a470-7603bd3aa915@spamschutz.glglgl.de> - 2014-06-10 09:27 +0200
Re: try/except/finally Marko Rauhamaa <marko@pacujo.net> - 2014-06-10 12:07 +0300
Re: try/except/finally Rustom Mody <rustompmody@gmail.com> - 2014-06-10 05:06 -0700
Re: try/except/finally Skip Montanaro <skip@pobox.com> - 2014-06-10 13:11 -0500
Re: try/except/finally Rustom Mody <rustompmody@gmail.com> - 2014-06-10 19:01 -0700
Re: try/except/finally Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-06-10 19:14 +0100
Re: try/except/finally Grant Edwards <invalid@invalid.invalid> - 2014-06-10 18:48 +0000
Re: try/except/finally Chris Angelico <rosuav@gmail.com> - 2014-06-11 06:37 +1000
Re: try/except/finally Roy Smith <roy@panix.com> - 2014-06-10 16:38 -0400
Re: try/except/finally Chris Angelico <rosuav@gmail.com> - 2014-06-11 06:43 +1000
Re: try/except/finally Ethan Furman <ethan@stoneleaf.us> - 2014-06-10 13:43 -0700
Re: try/except/finally Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-06-10 22:59 +0100
Re: try/except/finally Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-06-11 00:00 +0000
Re: try/except/finally Chris Angelico <rosuav@gmail.com> - 2014-06-11 10:12 +1000
Re: try/except/finally Roy Smith <roy@panix.com> - 2014-06-10 20:22 -0400
Re: try/except/finally Tim Delaney <timothy.c.delaney@gmail.com> - 2014-06-11 10:40 +1000
Re: try/except/finally Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-06-11 01:53 +0100
Re: try/except/finally Chris Angelico <rosuav@gmail.com> - 2014-06-11 11:00 +1000
Re: try/except/finally Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-06-11 02:06 +0100
Re: try/except/finally alister <alister.nospam.ware@ntlworld.com> - 2014-06-11 08:35 +0000
Re: try/except/finally Roy Smith <roy@panix.com> - 2014-06-11 08:50 -0400
Re: try/except/finally alister <alister.nospam.ware@ntlworld.com> - 2014-06-10 19:02 +0000
Re: try/except/finally Joshua Landau <joshua@landau.ws> - 2014-06-08 19:05 +0100
Re:try/except/finally Dave Angel <davea@davea.name> - 2014-06-07 21:59 -0500
Re: try/except/finally Philip Shaw <jnufcvyvuc@tznvy.pbz> - 2014-06-09 09:13 +0000
Re: try/except/finally Marko Rauhamaa <marko@pacujo.net> - 2014-06-09 12:40 +0300
Re: try/except/finally Shiyao Ma <i@introo.me> - 2014-06-10 00:23 +0800
Re: try/except/finally Skip Montanaro <skip@pobox.com> - 2014-06-09 11:56 -0500
csiph-web