Ist es in Python möglich, ein Objekt aus bereits instatiated Objekt neu zu erstellen, mit allen seinen Argumente in __init__
Methode übergeben?Erstellen Sie ein neues Objekt aus einem anderen bereits instanziierten Objekt mit den gleichen Argumenten
Ähnlich wie inspect.getcallargs
, aber für Klasseninstanzen.
Zum Beispiel:
class A:
def __init__(self, some_arg):
self.some_arg = some_arg
def f(a):
# somehow get all arguments from `a`, with which it was created
# kwargs = ...?
# and create a new instance of class with the same (or modified) args:
return a.__class__(**kwargs)
a = A(100)
new_a = f(a)
print(new_a.some_arg)
>>> 100
Siehe [Hauptzweck von '__repr__' in Python] (http://stackoverflow.com/ Fragen/15661063/Hauptzweck von Repr-in-Python –