dynamische Rückgabewerte

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
gogi
User
Beiträge: 1
Registriert: Mittwoch 24. März 2010, 11:01

Hallo allerseits,

ganz neu versuche ich mich gerade in Python und habe eine Frage was die übliche bzw. beste Vorgehensweise bei meinem Problem ist.

Ich habe einen Haufen von Methoden die übergebende Variablen analysieren und eine oder mehrere Lösungen für diese Variablen zurückgeben sollen.

Bsp.:
Sei folgende Methode: analyse(self, a, b, c)
Dann können die Rückgabewerte sein: (1) XOR (2) XOR (3) XOR (1, 2) XOR (2, 3)

Ich hatte mir gedacht diese Rückgabewerte in eine Liste zu speichern und zu "returnen". Wenn ich nur eine Methode hätte wäre das OK aber ich habe dutzende Methoden und ich fürchte durcheinander zu kommen bei der Benutzung (ich weiß dann nicht mehr welche Liste welche Werte enthalten kann).

Am liebsten wäre es mir Listen zu definieren die einzig ganz bestimmte Elemente aufnehmen können. Im o.g. Bsp. wären das die fünf Elemente: eine 1 XOR eine 2 XOR eine 3 XOR eine 1 und eine 2 XOR eine 2 und eine 3.
Das hätte den Vorteil das es zu runtime-errors kommen kann wenn ich ein Listenelement abfrage welches nicht existieren kann.

Wie würdet Ihr vorgehen?

Gruß,
Gogi
Benutzeravatar
mkesper
User
Beiträge: 919
Registriert: Montag 20. November 2006, 15:48
Wohnort: formerly known as mkallas
Kontaktdaten:

Sorry, ich verstehe nicht, was du machen willst. Was macht denn dein "Haufen von Methoden"? Worin liegt der Sinn, nur bestimmte Rückgabewerte zuzulassen? Sowas klingt für mich nach Unitttests.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Hallo.
gogi hat geschrieben:Am liebsten wäre es mir Listen zu definieren die einzig ganz bestimmte Elemente aufnehmen können. Im o.g. Bsp. wären das die fünf Elemente: eine 1 XOR eine 2 XOR eine 3 XOR eine 1 und eine 2 XOR eine 2 und eine 3.
Das hätte den Vorteil das es zu runtime-errors kommen kann wenn ich ein Listenelement abfrage welches nicht existieren kann.
Und das nennt man dann Dictionary ;-)

Du solltest aber wirklich noch einmal genauer erklären was du vor hast. Dictionaries sind für solche Sachen eine saubere Lösung, aber wahrscheinlich lässt sich dein Problem besser lösen.

Sebastian
Das Leben ist wie ein Tennisball.
Antworten