** * Dieser Artikel ist von Udemy "[Einführung in Python3, unterrichtet von aktiven Silicon Valley-Ingenieuren + Anwendung + Code-Stil im amerikanischen Silicon Valley-Stil](https://www.udemy.com/course/python-beginner/" Einführung in Python3, unterrichtet von aktiven Silicon Valley-Ingenieuren + Anwendung + Code-Stil im amerikanischen Silicon Valley-Stil ")" Es ist eine Klassennotiz für mich, nachdem ich den Kurs von belegt habe. Es ist mit Genehmigung des Ausbilders Jun Sakai für die Öffentlichkeit zugänglich. ** ** **
positional_augment_tuple
def say_something(word1, word2, word3):
print(word1)
print(word2)
print(word3)
say_something('Hi!', 'Mike', 'Nancy')
result
Hi!
Mike
Nancy
Natürlich können Sie es nacheinander wie "Wort1", "Wort2", "Wort3" einstellen, aber Es gibt eine Möglichkeit, dies gut zu machen, indem Sie auf die Positionsargumente tippen.
positional_augment_tuple
def say_something(*args):
print(args)
say_something('Hi!', 'Mike', 'Nancy')
result
('Hi!', 'Mike', 'Nancy')
Indem Sie dem Argument, das in ()
von say_something ()
eingefügt werden soll, *
voranstellen
Die dort eingehenden Argumente können abgegriffen werden.
Durch Drucken des dadurch erzeugten Taples durch weiteres Drehen der for-Schleife kann der vorherige reproduziert werden.
positional_augment_tuple
def say_something(*args):
for arg in args:
print(arg)
say_something('Hi!', 'Mike', 'Nancy')
result
Hi!
Mike
Nancy
positional_augment_tuple
def say_something(word, *args):
print('word =', word)
for arg in args:
print('arg =', arg)
say_something('Hi!', 'Mike', 'Nancy')
result
word = Hi!
arg = Mike
arg = Nancy
Ich habe "Wort" als Argument hinzugefügt, um an "say_something" zu übergeben. Dann gibt nur das erste Argument "Hi!" Zuerst "Wort" ein. Es ist ersichtlich, dass die nachfolgenden Argumente "Mike" und "Nancy" in "* args" eingehen.
positional_augment_tuple
def say_something(*args, word):
print('word =', word)
for arg in args:
print('arg =', arg)
say_something('Hi!', 'Mike', 'Nancy')
result
say_something('Hi!', 'Mike', 'Nancy')
TypeError: say_something() missing 1 required keyword-only argument: 'word'
Wenn Sie zuerst "* args" und danach "word" setzen, wird eine Fehlermeldung angezeigt.
Stellen Sie sicher, dass Sie die normalen Argumente → *
in dieser Reihenfolge verwenden.
Recommended Posts