Hugo's explanation is nice and clear.

You may also want to look at this way
Consider the most simplified form of the issue

def alpha():
      if  X:
           beta()
      else:
           return q

Here in the* if branch* nothing is returned
while in the *else branch *something is being returned.

That is  whenever X is True nothing is returned from alpha().
Even if beta() returns something that is not being used.

But when X is False something (q in this simplistic example)
is being returned

So this is a bug.

HTH

Asokan Pichai
SVP - Learning and Development

“Faith consists in believing when it is beyond the power of reason to
believe. "
 Voltaire <http://www.brainyquote.com/quotes/quotes/v/voltaire163832.html>
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to