Seite 1 von 1

Mehrere Auswahlmöglichkeiten

Verfasst: Mittwoch 12. Oktober 2022, 15:03
von fcutim
Hey, ich möchte etwas programmieren, bei dem man 1 von verschiedene Dingen auswählen kann.

Das Sollte z.B. so aussehen:

——————————————————————————————————|
⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀Willkommen⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ |
1: Programm1⠀ ⠀ ⠀ ⠀ ⠀ ⠀ 2: Programm2⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀|
⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀⠀ |
3: Programm3 ⠀ ⠀ ⠀ ⠀ ⠀ ⠀4: Programm4⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀|
⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀ ⠀|
——————————————————————————————————|

> Was möchtest du tun? : <Eingabe Benutzer>

Weiß jemand was ich damit meine und kann mir damit helfen?

Re: Mehrere Auswahlmöglichkeiten

Verfasst: Mittwoch 12. Oktober 2022, 15:27
von __blackjack__
@fcutim: Das nennt sich üblicherweise „Menü“ und im Grunde braucht man dazu nicht mehr als `print()` und `input()`.

Mit Grundlagen wie Schleifen, Zeichenketten, und Listen könnte man das etwas generischer gestalten, also nicht alles fest als Zeichenketten die direkt ausgegeben werden beschreiben, sondern als Liste mit Menüpunkten.

Wenn das Programm mehrere Menüpunkte zur Auswahl bietet, ist es üblicherweise so umfangreich, dass man auch Funktionen beherrschen sollte.

Mit Bibliotheken wie `rich` kann man die Ausgabe von Konsolenprogrammen hübscher gestalten als mit `print()` alleine, und einfacher als wenn man sich Code für Rahmen um Texte selber schreibt.

Re: Mehrere Auswahlmöglichkeiten

Verfasst: Mittwoch 12. Oktober 2022, 15:50
von fcutim
Danke für die Antwort? Aber jetzt bin ich nur um ein Teil schlauer und weis immer noch nicht, wie das geht...

Re: Mehrere Auswahlmöglichkeiten

Verfasst: Mittwoch 12. Oktober 2022, 15:55
von __deets__
Hast du den Vorschlag von __blackjack__ die Bibliothek "richt" zu benutz so schnell schon ausprobiert?

Re: Mehrere Auswahlmöglichkeiten

Verfasst: Mittwoch 12. Oktober 2022, 16:07
von __blackjack__
@fcutim: Oder um mal vom unteren Ende zu kommen: Um das statisch zu machen braucht man genau zwei Funktionen: `print()` und `input()`. Jede davon muss man maximal 1× aufrufen, wobei man `print()` auch für jede Ausgabezeile einzeln aufrufen kann, wenn man das einfacher findet. Wo hast Du *dabei* ganz konkret ein Problem? Wie sieht Dein Programm aus und welche Fehlermeldung bekommst Du? Am besten 1:1 inklusive Traceback in den Beitrag kopieren. Falls Du keine Fehlermeldung bekommst, müsstest Du beschreiben wie sich das Programm verhält und wo dieses Verhalten von dem abweicht was Du erwartest.