ich diese Art von einem Funktionsaufruf in Python habe:die Funktion Argument innerhalb des gleichen Anrufs Referenzierung
foo(["A", "B", "X", "Y", "Z"], SomeClass("m", ["A", "B", "X", "Y", "Z"]), SomeClass("n",["A", "B", "X", "Y", "Z"]))
Im Allgemeinen kann foo beliebige Anzahl von Argumenten haben, so kann es viele Someclass-Objekte übergeben werden, aber wenn der Konstruktor aufrufen, müssen Sie immer das gleiche passieren, dass Sie als erstes Argument zu Foopass, ist das, was ich möchte haben:
foo(["A", "B", "X", "Y", "Z"], SomeClass("m", arg1), SomeClass("n", arg1))
so ist der Code kürzer und besser lesbar ist. Was sollte ich anstelle von arg1 setzen, um das erste Argument, das an foo übergeben wurde, zu "referenzieren"?
Sie könnten den Prototyp von 'foo' ändern, so dass es wie' foo (["A", "B", "X", "Y", "Z"] verwendet werden könnte) m "," n ")' und intern 'foo' würden die verschiedenen Objekte instanziieren. Eine andere Lösung wäre, die Variable 'arg1' zu erstellen und sie nach dem Funktionsaufruf zu löschen. – Spirine
Sprine, sollten Sie das als Antwort hinzufügen. Ihre erste Lösung ist besser als die bisher beantworteten. –