Variable name has a typo, but code still works. Why?

Max M maxm at
Wed May 31 16:27:40 CEST 2006

mateus wrote:
> print "hello world"
> I have a nested loop where the outer loop iterates over key value pairs
> of a dictionary and the inner loop iterates over a list each list of
> which is a mapped value from the dictionary
>     def showReport(self):
>         for dev, sessions in self.logger.items():
>             for tree in session:
>                 self.addTestItem(self, tree)
> What I don't understand is why this executes w/o any problems when
> "sessions" was spelled as plural (sessionS) while later being spelled
> in the singular (session).
> Is there some type of name resolution of local variables where Python
> makes assumptions?

No. You are probably running your script in an ide that keeps an old 
variable hanging around.

Try it from a command promt.


hilsen/regards Max M, Denmark
IT's Mad Science

Phone:  +45 66 11 84 94
Mobile: +45 29 93 42 96

More information about the Python-list mailing list