Ich versuche Python 3.5.2 xmlrpc.client ServerProxy() zu unterklassifizieren, um seine Kommunikation mit einem XML-Server anzupassen. Ich bin jedoch davon betroffen, wie ServerProxy seine Attribute benennt.Wie ändert Python 3 xmlrpc.client ServerProxy() Objekt dynamisch seine Attribute?
Die Attribute sind ganz klar in ‚xmlrpc/client.py‘ genannt:
class ServerProxy:
...
self.__transport = ...
self.__encoding = ...
self.__verbose = ...
...
Doch wenn ich versuchen, das Objekt interaktiv zu untersuchen, die Objektattribute vorangestellt mit ‚_ServerProxy‘ sind:
import xmlrpc.client
my_client = xmlrpc.client.ServerProxy('http://01.234.567.890')
my_client.__dict__
Out[3]:
{'_ServerProxy__allow_none': False,
'_ServerProxy__encoding': 'utf-8',
'_ServerProxy__handler': '/RPC2',
'_ServerProxy__host': '01.234.567.890:8000',
'_ServerProxy__transport': <xmlrpc.client.Transport at 0x1043c4320>,
'_ServerProxy__verbose': False}
Wie/wo im Code wird diese dynamische Umbenennung durchgeführt? Ich dachte Ich verstand __getattr__()
und Freunde, aber ich kann nicht für das Leben von mir herauszufinden, wo das passiert ist.
Ah, Mist. Du hast recht. Ich habe Mangeln vergessen. Du hast recht. Es ist ein Betrogener. Danke Ignacio. –