Magic Methods

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

loyloep hat geschrieben:Mit welchen Befehlen ausser print lassen sich sich denn noch die Werte der Methode __add__ und __sub__ ausgeben?
Die Frage ergibt so überhaupt keinen Sinn - Was sind Werte einer Methode? Meinst du die Rückgabewerte, oder die Argumente? Oder die Methode selbst als (Funktions-)Objekt? Und Ausgeben geht mit allem, was eine Ausgabe produziert - vom simplen print (Ausgabe am STDOUT) über einen angeschlossenen Drucker, Modem, selbstgebasteltem LED-Modul am seriellen Port etc pp. Das ist sicher nicht was Du suchst...

Anscheinend hast Du ein paar Verständnislücken darüber, was ein Rückgabewert einer Funktion ist und was damit nach Rückgabe eigentlich passiert. Hierzu der Tipp: `obj.__add__(other)` ist gleichbedeutend zu `obj + other`. Wenn Du um letzteres Klammern setzt, wird vllt. klarer, wo der Rückgabewert landet.

Die Verkettung ala `a + b + c` funtioniert noch nicht mit Deinem Code, hier musst Du nochmal über den Typen Deines Rückgabewertes nachdenken.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

interessant ist, dass im (sehr guten) Buch "Fluent Python" genau das selber Beispiel drin ist und in verschiedenen Varianten durchgespielt wird. Und anderem, um __add__ und __sub__ zu erklären.

Ob der Aufgabensteller des TE da wohl abgeschrieben hat? ;-)

Gruß, noisefloor
Antworten