jtschoch hat geschrieben:Wie soll ich aber die Funktionen aufrufen?
Überleg' doch mal, was den keys 1, 2 etc. in Deinem dictionary-Beispiel zugewiesen wird. Du willst ja nicht die Rückgabewerte der Funktionen dort stehen haben, sondern die Funktionen selbst.
jtschoch hat geschrieben:Da kann man ja gleich print verwenden!
Ja natürlich, solange Du auf der Konsolenebene bleibst (also kein 'curses', 'urwid' oder ähnliches verwendest), wird Deine UI aus jeder Menge print-Anweisungen bestehen. Der Punkt ist ja nicht, dass Du diese Anweisungen an sich reduzieren sollst, sondern dass diese Anweisungen, die allein der Ausgabe dienen, nichts in Funktionen/Methoden verloren haben, die für die Programmlogik zuständig sind.
Ich wurde hier auch immer und immer wieder aufgefordert, Logik und Ausgabe zu trennen und erst einmal die Funktionen/Klassen zu entwerfen, die später dann ihre Informationen an die Ausgabe weitergeben oder von dort abgeholt werden. Es dauerte ein Weilchen bis ich um diese 'Kurve herumdenken' konnte, weil in meiner Vorstellung der Ablauf eines Programmes zwangsläufig mit einer (Bedien-)oberfläche verknüpft sein musste. Beschränke Dich also erstmal auf das eigentliche, nämlich Funktionen wie Deine 'Spielbank.einzahlung()' und diese Dinge. Natürlich kannst Du (vorerst) in diesen Funktionen ein oder zwei print-Anweisungen platzieren, um das Ergebnis kontrollieren zu können. Aber die finale in Form gebrachte Ausgabe machst Du erst, wenn diese Funktionen/Klassen die Ergebnisse liefern, die Du erwartest.
Irgendwie kann ich es auch verstehen, dass Du das eine oder andere, das Dir hier geraten wird, nicht umsetzen möchtest oder kannst, weil Du Dich dafür mit Dingen auseinandersetzen musst, die auf den ersten Blick so kompliziert und riesig erscheinen, dass man versucht ist zu glauben, mit seinem eigenen kleinen Werkzeugkasten schneller ans Ziel zu kommen. Gerade am Anfang bekam und auch jetzt noch bekomme ich hier im Forum Antworten und Tipps, für dessen Verständnis und Umsetzung ich oft viele Tage benötige, weil ich oft noch nicht einmal die Begrifflichkeiten verstehe. Und immer (ich meine wirklich 'immer'!) wenn ich in meiner Anfängerarroganz glaubte, ich wüsste einen einfacheren Weg, war das nur ein umständlicher, schlecht oder überhaupt nicht funktionierender Umweg.
mutetella