[Python-Dev] Is implicit underscore assignment buggy? (original) (raw)

Jeremy Hylton jeremy at alum.mit.edu
Thu Jun 8 00:49:38 CEST 2006


On 6/7/06, Raymond Hettinger <raymond.hettinger at verizon.net> wrote:

> for users, it's actually quite simple to figure out what's in the > variable: it's the most recently printed result. if you cannot see > it, it's not in there.

Of course, there's a pattern to it. The question is whether it is the right behavior. Would the underscore assignment be more useful and intuitive if it always contained the immediately preceding result, even if it was None? In some cases (such as the regexp example), None is a valid and useful possible result of a computation and you may want to access that result with .

If you're using _ in an interactive environment, it's usually because you don't want to re-type the value of the expression. If the value is None, it isn't hard to type.

BTW, there is a trivial exception to the "most recently printed result" rule.

>>> 13 13 >>> = None >>> # is no longer the most recently printed result

If you want to assign to _, the results are your own fault.

Jeremy



More information about the Python-Dev mailing list