Ich verstehe, was die Funktion unten tut, aber ich bekomme nicht ganz die Bedeutung (oder den Unterschied) zwischen True
und False
.Wahr und falsch in einer Funktion def
Beide Klauseln bewirken, dass das Programm beendet wird; bei Eingabe einer positiven oder negativen Antwort wird die Python-Eingabeaufforderung zurückgegeben. Was ändert sich also intern?
Auch wenn ich zu Design eine solche Funktion selbst, sollte ich True
oder False
, wenn ich nur das Programm wollte die Aufforderung zu mir zurückzukehren, ohne tatsächlich etwas zu tun?
def ask(prompt, retries = 4, reminder = 'Please try again!'):
while True:
response = input(prompt)
if response in ('y', 'yes'):
print('Got y or yes!')
return True
if response in ('n', 'no', 'nope'):
print('Got n or no or nope!')
return False
retries = retries - 1
if retries < 0:
raise ValueError('Invalid user response!')
print(reminder)
ask('Do you wanna quit?')
Es hängt von Ihrer Anwendung ab, wenn Sie die Rückgabe der Funktion woanders weitergeben müssen, dann macht es einen Unterschied, ansonsten können Sie auch einfach return verwenden. – Alessandro
Wenn Sie den zurückgegebenen Wert nicht verwenden, können Sie nur Return verwenden (ohne True oder False) –
Ich würde sagen, dass es andere Rückgabewerte hat, falls Sie den Benutzer etwas anderes fragen möchten: "Wollen Sie das wirklich kaufen? " dann könntest du ein 'if ask '(' Willst du das wirklich kaufen? ')' zum Beispiel – KRONWALLED