Schlüsselwortargumente für Python-Funktionen

f(a, b, option1=10, option2=20)

Über die grundlegende Sache, dass Sie das Argument mit einem Schlüsselwort wie angeben möchten. Die Option wird nicht jedes Mal angegeben. Wenn sie nicht angegeben wird, wird der Standardwert verwendet.

f(a, b) # option1,Option2 muss nicht angegeben werden

**kwargs

Wenn ich suche, finde ich oft etwas namens "** kwargs".

def f(a, b, **kwargs): 
	option1 = kwargs.get('option1', 1)
	option2 = kwargs.get('option2', 2)

kwargs ist ein Wörterbuch, das Schlüsselwortnamen und -werte enthält, und der Standardwert wird durch die Methode get angegeben.

"** kwargs" ist jedoch "alles". Wenn Sie es also versehentlich falsch schreiben, wird ein unbeabsichtigter Standardwert verwendet.

f(a, b, opton1=10) #Option1 ist aufgrund von Rechtschreibfehlern standardmäßig 1

Standardargument

Erstens ruft Python Argumente nach Namen auf, daher sollten Sie "** kwargs" nicht verwenden, wenn Sie die Schlüsselwörter kennen.

def f(a, b, option1=1, option2=2): 
	pass

f(a, b, option1=10, option2=20)
f(a, b, opton1=10) #Es gibt kein Schlüsselwort für den Fehler opton1

Option1 ist jedoch auch ein festes Argument. Wenn Sie also versehentlich einen Fehler bei der Anzahl der Argumente machen, überschreiben Sie die Option.

f(a, b, c) #Falsche Anzahl von Argumenten, unbeabsichtigte Option1=c

* Argument (Python3)

In Python3 können nachfolgende Variablen durch Einfügen von "*" nur über Schlüsselwörter aufgerufen werden.

def f(a, b, *, option1=1, option2=2): 
	pass

f(a, b, option1=10, option2=20)
f(a, b, c) #Zwei fehlerfeste Variablen
f(a, b, opton1=10) #Schlüsselwort, das nicht existiert

Deshalb empfiehlt Python3 dies.

Referenz

http://stackoverflow.com/questions/1419046/python-normal-arguments-vs-keyword-arguments

Recommended Posts

Schlüsselwortargumente für Python-Funktionen
Python #Funktion 1 für Super-Anfänger
[Python of Hikari-] Kapitel 06-04 Funktionen (Argumente und Rückgabewerte 3)
Python-Funktionen
[Python of Hikari-] Kapitel 06-03 Funktionen (Argumente und Rückgabewerte 2)
Azure-Funktionen: Probieren Sie dauerhafte Funktionen für Python aus
[Hikari-Python] <Zusatz> Kapitel 06-05 Funktionen (Argumente und Rückgabewerte 4)
2016-10-30 sonst für Python3> für:
Einfache Schlüsselwortextraktion mit TermExtract für Python
Python> Schlüsselwortargumente> hoge (** {'a': 1, 'b': 2, 'c': 3})
# Python-Grundlagen (Funktionen)
[Anfänger] Python-Funktionen
Python Einfach zu bedienende Funktionen
Python-Grundlagen: Funktionen
Wann wirken sich Python-Funktionen auf die Argumente des Aufrufers aus?
Ich möchte mich mit Schlüsselwortargumenten von Python merken
Astro: Häufig verwendete Python-Module / -Funktionen zur Analyse
Über Python für Schleife
Python-Anfängerhandbuch (Funktionen)
Python-Grundkurs (12 Funktionen)
Über Funktionsargumente (Python)
Python-Grundlagen ② für Anweisung
[Python] Memo über Funktionen
Python Lehrbuch für Anfänger
Refactoring-Tools, die mit Python verwendet werden können
Python: Über Funktionsargumente
Positionsargument, Schlüsselwortargument, Standardargument
Toolchain für Python für Android
Zusammenfassung der Python-Argumente
Integrierte Funktionen von Wrap Python
OpenCV für Python-Anfänger
Wörterbuch der Schlüsselwortargumente
Installieren Sie Python (für Windows)
[Python] für Anweisungsfehler
Wartung der Python-Umgebung für Projekte
Python> Positionsargumente / Schlüsselwortargumente> mixable> print (2, 3, 5, 7, 11, sep = '\ t', end = '')
[Einführung in Udemy Python3 + Application] 53. Wörterbuch der Schlüsselwortargumente
Heutiger Python-Fehler: Ungültiges Schlüsselwortargument für diese Funktion
[Hikari-Python] Kapitel 06-01 Funktionen (integrierte Funktionen und Funktionsdefinitionen)
Curry jede Funktion mit Python ....
Python> Lambda> winzige Funktionen / Rückruffunktionen
Einführung in Python-Funktionen
Python-Memo (für mich): Array
Fabric unterstützt Python 3
Python-Liste, für Anweisung, Wörterbuch
Python für die Datenanalyse Kapitel 4
Lernablauf für Python-Anfänger
Installationsverfahren für Python 3.6 [für Windows]
BigQuery-Integration für Python-Benutzer
Python-Lernplan für KI-Lernen
Für Mac einrichten (Python)
Empfangen Sie Laufzeitargumente in Python 2.7
Python Tkinter Memo (für mich)
OpenCV3-Installation für Python3 @macOS
Persönliches Python-Code-Memo
Studie aus Python Hour3: Funktionen
Aufbau einer Python-Umgebung für Mac
Techniken zum Sortieren in Python