Ich verstehe, wie beide __init__
und __new__
arbeiten. Ich frage mich, ob es etwas gibt __init__
kann das tun __new__
kann nicht?Python: Verwenden Sie immer __new__ anstelle von __init__?
das heißt durch das folgende Muster verwenden von __init__
ersetzt:
class MySubclass(object):
def __new__(cls, *args, **kwargs):
self = super(MySubclass, cls).__new__(cls, *args, **kwargs)
// Do __init__ stuff here
return self
ich gefragt werde, wie ich diesen Aspekt des Python OO in meinem Kopf besser fit machen möchte.
mögliches Duplikat von [why definiert '\ _ \ _ new__' und '\ _ \ _ init__' alle in einer Klasse] (http: // stackoverflow.com/questions/2017876/why-defined-new-und-init-all-in-a-class) –
Alte Frage zu diesem Thema: [Python Verwendung von \ _ \ _ new__ und \ _ \ _ init__?] (http://stackoverflow.com/questions/674304/pythons-use-of-new-and-init) –