Wie bekomme ich einen Funktionsnamen als String?

In Python kann man das integrierte function Attribut __name__ verwenden, um den Namen einer Funktion als String zu erhalten. Hier ist ein Beispielcode-Schnipsel:

def meine_funktion():
    pass

print(meine_funktion.__name__) # Ausgabe: "meine_funktion"

Dieser Code definiert eine Funktion mit dem Namen meine_funktion und gibt dann den Namen der Funktion mit dem __name__-Attribut aus. Die Ausgabe wird "meine_funktion" sein.

Man kann auch str() oder repr() benutzen

def meine_funktion():
    pass

print(str(meine_funktion)) # Ausgabe: "<function meine_funktion at 0x7f7c52f5a0d0>"
print(repr(meine_funktion)) # Ausgabe: "<function meine_funktion at 0x7f7c52f5a0d0>"

Beachten Sie, dass str(meine_funktion) und repr(meine_funktion) die Zeichenkettenrepräsentation des Funktionsobjekts zurückgeben, die den Modulnamen enthält, wenn die Funktion in einem Modul definiert ist und die Speicheradresse der Funktion.