Hello, if we want to access the private member of object we use the classname, it doesn't make sense. For example: I have class A:
class A: def __init__(self, i): self.__i = i; pass
__i = 0
a = A(22); b = A(33);
How can I get field i in object a and how can I get field i in object b?
py> class A: ... def __init__(self, i): ... self.__i = i; ... py> a = A(22) py> a._A__i 22
Beside I try to call: print _A__i #fail this create error
Looks like you're confused about the difference between instances and modules. The code:
print _A__i
asks Python to print the attribute _A__i of the given module. But you want the attribute _A__i of the instance 'a'. As you can see in my code, if you want the attribute of the instance, you need to specify it as such.
As an additional reminder, you generally *shouldn't* be accessing "private" variables of a class. There's a reason they're declared private. ;)
Steve -- http://mail.python.org/mailman/listinfo/python-list