Python wird die Standardargumente bewerten Sie für eine Funktion definieren, müssen Sie die Eingabeaufforderung während der Definition erhalten entweder es Ihnen gefällt oder nicht. Der an der Eingabeaufforderung eingegebene Wert wird dann als Standard für x
zugewiesen.
Wenn Sie einen Standardwert mögen, die input
, wenn kein anderer sinnvoller Wert angegeben wird, verwenden Sie die gemeinsame Idiom Beteiligung None
und fällt input
im Körper der Funktion, stattdessen verwenden:
def f(x=None):
if x is None:
x = input('> ')
print(x)
Nun, wenn Sie denken, ich will noch irgendwie diese Argumente mit Standard tun, dann werden Sie eine Funktion, die neu erstellt Ihre Funktion mit jedem Aufruf erstellen müssen:
def f():
def _(x = input('> ')):
print(x)
return _()
ich sehe nicht, was diese profitieren würde bringen anders als beschwichtigen Sie Ihre Neugier, obwohl :-)