On Dec 28, 5:12 pm, John Machin <sjmac...@lexicon.net> wrote: > On Dec 29, 7:06 am, Roger <rdcol...@gmail.com> wrote: > > > > > > Curious. When I see a bare return, the first thing I think is that the > > > author forgot to include the return value and that it's a bug. > > > > The second thing I think is that maybe the function is a generator, and > > > so I look for a yield. If I don't see a yield, I go back to thinking > > > they've left out the return value, and have to spend time trying to > > > understand the function in order to determine whether that is the case or > > > not. > > > > In other words, even though it is perfectly valid Python, bare returns > > > always make the intent of the function less clear for me. I'm with Bruno > > > -- if you have a function with early exits, and you need to make the > > > intent of the function clear, explicitly return None. Otherwise, leave it > > > out altogether. > > > > -- > > > Steven > > > To me this is the soundest argument. Thanks for the advice. I think > > I'll follow this as a rule of thumb hereafter. > > Please don't. Follow MRAB's advice, with the corollary that a > generator is forced by the compiler to be a "procedure" in MRAB's > terminology.
Yup, this is what I took away from this discussion. Thanks! -- http://mail.python.org/mailman/listinfo/python-list