At a loss on python scoping.
tjreedy at udel.edu
Tue Mar 26 08:19:17 CET 2013
On 3/26/2013 2:17 AM, Shiyao Ma wrote:
> suppose I have a file like this:
> class A:
> r = 5
> def func(self, s):
> self.s = s
> a = A()
> print(a.r) # this should print 5, but where does py store the name of r
> print(a.s) # this should print 3, also where does py store this name.
> what's the underlying difference between the above example?
For CPython, both the class A and the instance a have a .__dict__
attribute that stores names and values. But that is intended to be
hidden and transparent for normal usage.
Terry Jan Reedy
More information about the Python-list