Coding style and else statements

Carl Banks pavlovevidence at gmail.com
Wed Aug 30 15:25:02 EDT 2006


Ben Finney wrote:
> "Carl Banks" <pavlovevidence at gmail.com> writes:
>
> > However, I have rare cases where I do choose to use the else
> > (ususally in the midst of a complicated piece of logic, where it's
> > be more distracting than concise).  In that case, I'd do something
> > like this:
> >
> > def foo(thing):
> >     if thing:
> >         return thing+1
> >     else:
> >         return -1
> >     assert False
>
> To my eyes, that's less readable than, and has no benefit over, the
> following:
>
>     def foo(thing):
>         if thing:
>             result = thing+1
>         else:
>             result = -1
>         return result

For this example, yes.  Actually I'd probably never do it in this
particular case.  What I mean in general is some rare times (especially
when logic is complex) I prefer to use a redundant control statement
that renders something non-reachable; then I use assert False there.


Carl Banks




More information about the Python-list mailing list