En Wed, 14 Nov 2007 04:51:57 -0300, Davy <[EMAIL PROTECTED]> escribió:
> I have write a simple class, I want the function two() to call private > function __one(), but there is an error : > NameError: global name '_simple__one' is not defined, how to work > around it > > class simple: > def __one(self): > print "Hello" > def two(self): > __one() > print "world" > > if __name__ == '__main__': > s = simple() > s.two() Note that your problem is not related to mangled names: replacing __one by one raises a similar exception. Remember that "self" is not implicit: you must use self.__one() "private" methods (and atributes in general) use a single underscore: _one. Double underscores __one are reserved for the (rare) cases when you want to ensure unique names (or name clashes are expected). -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list