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

mateus mateus.justino at
Wed May 31 15:30:36 CEST 2006

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?

More information about the Python-list mailing list