[Python-3000] Removing __var

Thomas Heller theller at python.net
Fri Sep 22 20:19:52 CEST 2006


Bob Ippolito schrieb:
> On 9/22/06, Fred L. Drake, Jr. <fdrake at acm.org> wrote:
>> On Friday 22 September 2006 13:05, Christian Tanzer wrote:
>>  > It is useful in some situations, though. In particular, I use a
>>  > metaclass that sets `__super` to the right value. This wouldn't work
>>  > without name mangling.
>>
>> This also doesn't work if two classes in the inheritance hierarchy have the
>> same __name__, if I understand how you're using this.  My guess is that
>> you're using calls like
>>
>>     def doSomething(self, arg):
>>         self.__super.doSomething(arg + 1)
> 
> In the one or two situations where it "is useful" you could always
> write out what it would've done.
> 
> self._ThisClass__super.doSomething(arg + 1)

It is much more verbose, though.  The question is are you writing
this more often, or are you introspecting more often?

Thomas



More information about the Python-3000 mailing list