Seite 1 von 1

Kleines Python-Problem

Verfasst: Samstag 23. September 2017, 12:48
von ::1
Hallo liebe Community,

ich habe das Forum per Zufall über Google gefunden und es spricht mich auf jeden Fall an.

Ich bin gerade dabei seit gestern Python zu lernen und bis jetzt hat soweit alles geklappt. Ich bin überrascht wie simpel Python ist aber auch wiederum eine mächtige Sprache.

Ich habe jedoch ein kleines Problem was ich nicht lösen kann.

Und zwar will ich gerade ein Code basteln, bei dem ich wenn ich irgendeine Nummer eingebe, auf eine bestimmte Website komme.
Z. B. Wenn ich die Taste "1" eingebe, gelange ich auf "Google.de", wenn ich die Taste "2" eingebe, gelange ich auf "Facebook.de" und bei "3" auf "Instagram.com"

Soweit so gut. Ich habe es noch hingekriegt, dass wenn man auf die Tasten drückt, man auf die jeweilige Website kommt.

Das Problem ist Folgendes:

Wenn ich z. B. auf Facebook gelangen will (welches die Taste 2 ist), muss ich zwei Mal die Taste "2" eingeben um auf Facebook zu gelangen. Bei Instagram muss ich 3x die Taste "3" eintippen. Bei Google jedoch nur 1x und dann komme ich direkt auf die Website.

Ich möchte es so wie bei Google haben, dass wenn man eine Nummer eintippt, der Code dann quasi "gebreakt" wird und man zurück ins Hauptmenü kommt.

Hier der Code:

Code: Alles auswählen

import webbrowser

menue = print("""\
        Welche Website möchtest du öffnen?
         1 - Google
         2 - Facebook
         3 - Instagram
""")

while True:
    if input("Deine Eingabe: ") == "1":
        webbrowser.get("windows-default")
        webbrowser.open("www.google.de")
        print("Google wurde erfolgreich geöffnet.")
        break

    elif input("Deine Eingabe: ") == "2":
        webbrowser.get("windows-default")
        webbrowser.open("www.facebook.de")
        print("Facebook wurde erfolgreich geöffnet.")
        break

    elif input("Deine Eingabe: ") == "3":
        webbrowser.get("windows-default")
        webbrowser.open("www.instagram.com")
        print("Instagram wurde erfolgreich geöffnet.")
        break

    else:
        print("Bitte versuche es erneut.")

Re: Kleines Python-Problem

Verfasst: Samstag 23. September 2017, 13:37
von noisefloor
Hallo,

dein Fehler ist, dass du das `input` direkt in der if-Abfrage hast. Dadurch erscheint es nochmal, wenn die 1. Bedingung nicht stimmt und nochmal, wenn die 2. Bedingung nicht stimmt und nochmal...
Pack' das `input` vor die if-Abfrage und binde das Ergebnis von `input` an eine Variable, die in der if-Bedingung abgefragt wird, dann sollte es passen.

Gruß, noisefloor

Re: Kleines Python-Problem

Verfasst: Samstag 23. September 2017, 14:18
von ::1
EDIT:

Ich hab es herausgefunden. Danke dir!