Code 'identisch'?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
heiliga horsd

Hallo,

habe eine etwas komische Frage. Gegeben se folgende Funktion:

Code: Alles auswählen

def quad(x):
    print(x*x)
Ist nun

Code: Alles auswählen

def Quadrieren(x):
    quad(x)
identisch zu

Code: Alles auswählen

Quadrieren = quad
Beim Aufrufen von Quadrieren(x) passiert zwei mal das selbe - gibts da irgendwelche Unterschiede der beiden Vorgehensweisen die man kennen/beachten sollte?

Gruß,
heiliga horsd
BlackJack

@heiliga horsd: Also *identisch* würde ich nicht sagen, aber zumindest äquivalent was das Ergebnis/den Effekt angeht. Wenn man sich die Funktion(en) genauer anschaut kann man natürlich schon Unterschiede ausmachen. Zum Beispiel liefert `Quadrieren.__name__` in den beiden Fällen ein unterschiedliches Ergebnis.
heiliga horsd

OK. Welche der beiden Methoden ist vorzuziehen, um einer bereits vorhandenen Funktion einfach einen 'besseren' Namen zu geben? Natürlich sollten Funktionen von Anfang an einen guten Namen haben, aber die Funktion kommt nicht von mir und ich will ihr einfach bloß für eine einmalige Verwendung einen Namen geben, der sofort zeigt, was sie macht. Beispielsweise(!) wird aus Natural_Mergesort() nur sortiere().
BlackJack

@heiliga horsd: Ich würde die Zuweisung vorziehen. Weniger tippen und weniger Code der ausgeführt werden muss.

Edit: Wenn die Funktion von irgendwo importiert wird, gibt es ja auch noch ``as`` als Möglichkeit zum umbenennen. Also beispielsweise: ``from sort_lib import Natural_Mergesort as sortiere``.
heiliga horsd

OK Danke für die Hilfe.

"Problem" gelöst!
Antworten