Ich bin ein totaler Anfänger und habe mir Ссылка angesehen, aber ich kann das Problem hier nicht verstehen. Es ist ziemlich einfach, wenn der Benutzer y eingibt, sollte es drucken, das wird die Berechnung tun, obwohl ich einen Syntaxfehler auf IF antwort == "y"
bekomme %Vor% Auch wenn Sie den fehlerhaften if
und den falschen Einzug in Ihrem Code korrigiert haben, funktioniert er nicht wie erwartet. Verwenden Sie in
, um eine Zeichenkette anhand einer Gruppe von Zeichenketten zu prüfen. Hier ist, wie Sie es tun würden (und beachten Sie, dass if
ist alles Kleinbuchstaben und dass der Code innerhalb der if
-Block eingerückt ist eine Ebene).
Ein Ansatz:
%Vor%Ein anderer:
%Vor% If
sollte if
sein. Ihr Programm sollte so aussehen:
Beachten Sie auch, dass der Einzug wichtig ist, da er in Python einen Block markiert.
Python ist eine von Groß- und Kleinschreibung abhängige Sprache. Alle Python-Schlüsselwörter sind Kleinbuchstaben. Verwenden Sie if
, nicht If
.
Geben Sie nach dem Aufruf von print()
auch keinen Doppelpunkt ein. Richten Sie auch die Aufrufe print()
und exit()
ein, da Python für die Darstellung von Codeblöcken Einrückungen anstelle von Klammern verwendet.
Und auch, proceed = "y" or "Y"
wird nicht tun, was Sie wollen. Verwenden Sie proceed = "y"
und if answer.lower() == proceed:
oder etwas ähnliches.
Es gibt auch die Tatsache, dass Ihr Programm beendet wird, solange der Eingabewert nicht das einzelne Zeichen "y" oder "Y" ist, was der Aufforderung von "N" für den alternativen Fall widerspricht. Statt Ihrer else
-Klausel verwenden Sie vorher elif answer.lower() == info_incorrect:
, mit info_incorrect = "n"
. Dann wiederholen Sie einfach die Antwort oder etwas, wenn der Eingabewert etwas anderes ist.
Ich würde empfehlen, das Tutorial in der Python-Dokumentation zu lesen, wenn Sie so viel Ärger haben, wie Sie jetzt lernen. Ссылка
Sie wollen:
%Vor%Oder
%Vor%Hinweis:
input
entzieht die Eingabe. "a" or "b"
zu "a"
ausgewertet, während 0 or "b"
zu "b"
ausgewertet wird. Siehe Die eigentümliche Natur von und und oder . Auch wollen Sie nicht
%Vor%Sie möchten
%Vor% input()
bewertet, was als Python-Ausdruck eingegeben wurde, raw_input()
gibt eine Zeichenfolge zurück.
Bearbeiten: Das gilt nur für Python 2. In Python 3 ist input
in Ordnung, obwohl str()
wrapping immer noch redundant ist.
Tags und Links python conditional-statements