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
dynamische Rückgabewerte
- 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.
Hallo.
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
Und das nennt man dann Dictionarygogi 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.
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.