alist = []
def show(*args, **kwargs):
alist.append(*args, **kwargs)
print(alist)
>>> show('tiger')
['tiger']
>>> show('tiger','cat')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in show
TypeError: append() takes exactly one argument (2 given)
>>> show('tiger','cat', {'name':'tom'})
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in show
TypeError: append() takes exactly one argument (3 given)
Da die Methode append von Alist akzeptiert nur ein Argument, warum nicht einen Syntaxfehler in der Zeile alist.append(*args, **kwargs)
in der Definition der Methode zu erkennen?Wie funktioniert das list.append?
, denn das ist nicht, wie Python funktioniert .. Da ist nichts syntaktisch falsch, die Funktion tut es einfach Es akzeptiert nicht mehr als 1 Argument. Versuchen Sie list.extend – user2682863
Wie soll der Interpreter wissen, was "Alist" sein wird, wenn Sie 'show' aufrufen? – TigerhawkT3
Wolltest du fragen, warum es keinen Fehler für 'show ('tiger')' gab, aber gab es für 'show ('tiger', 'cat')'? –