Как мне выполнить правильную функцию if в этом случае? - PullRequest
0 голосов
/ 20 февраля 2020

Этот код заставляет меня задавать первый вопрос, если input (x), после предоставления программе определенной строки (например, «add»). После ввода его несколько раз, он дает мне желаемый результат.

Почему бы не при первой попытке? Далее, как мне выполнить все oop, например, когда программа заканчивается, когда ввод «конец»?

Заранее спасибо. Бест.

    x = """Wählen Sie eine der folgenden vorgegebenen Operationen: (add/subtract/multiply/divide/end/history)
"""
a = "Erste Zahl: "
b = "Zweite Zahl: "
ops = ["add", "subtract", "multiply", "divide", "history", "end"]
list = []

if input(x) in ops:

    list.append(input(x))

    if input(x) == "add":
        print(int(input(a)) + int(input(b)))

    elif input(x) == "subtract":
        print(int(input(a)) - int(input(b)))

    elif input(x) == "multiply":
        print(int(input(a)) * int(input(b)))

    elif input(x) == "divide":
        print(int(input(a)) / int(input(b)))

    elif input(x) == "history":
        print(list)

    elif input(x) == "end":
        print("Das Programm wird beendet")

else:
    print("""Geben Sie bitte eine gültige Eingabe ein""")

1 Ответ

0 голосов
/ 20 февраля 2020

Каждый раз, когда вы звоните input(), вы запрашиваете новый ввод. Возможно, вы захотите вызвать input() просто один раз , сохранить результат в переменной, а затем сравнить с этой переменной:

answer = input("Please type your answer ")

if answer == "hello":
    print("You typed a greeting")
elif answer == "hamburger":
    print("You are eating lunch")
... etc
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...