Im heutigen Artikel erfahren wir mehr über das Wissen im Zusammenhang mit dem Aufruf von Python-Funktionen und der Parameterübergabe. Nachdem wir verstanden haben, was eine Funktion ist, müssen wir verstehen, wie Python Funktionen verwendet. Wenn Sie schließlich nur wissen, was eine Funktion ist, aber nicht wissen, wie Python eine Funktion aufruft, dann nützt es nichts, nur die Definition einer Funktion zu kennen. Beginnen wir ohne weiteres Lernen, Funktionen aufzurufen.
Funktionsaufruf: Durch das Definieren einer Funktion wird der Funktion nur ein Name gegeben, die in der Funktion enthaltenen Parameter und die Codeblockstruktur angegeben. Sobald die Grundstruktur dieser Funktion vollständig ist, können Sie sie über einen anderen Funktionsaufruf oder direkt über die Python-Eingabeaufforderung ausführen. Das folgende Beispiel ruft die Funktion printme() auf:#!/usr/bin/python # -*- coding: UTF-8 -*- # 定义函数 def printme( str ): "打印任何传入的字符串" print str; return; # 调用函数 printme("我要调用用户自定义函数!"); printme("再次调用同一函数");
我要调用用户自定义函数! 再次调用同一函数
Parameterübergabe: In Python gehören Typen zu Objekten und Variablen haben keinen Typ.
Beziehen Sie sich auf die folgende Codierung:a=[1,2,3] a="Runoob"
(Im obigen Code ist [1,2,3] der Listentyp, „Runoob“ der String-Typ und die Variable a hat kein Typ, sie ist nur eine Referenz auf ein Objekt (einen Zeiger), der ein Objekt vom Typ Liste oder ein Objekt vom Typ String sein kann)
Änderbar (veränderlich) und unveränderlich . (unveränderliches) Objekt
(In Python sind Strings, Tupel und Zahlen unveränderliche Objekte, während Liste, Diktat usw. Objekte sind, die geändert werden können.)
1. Unveränderlicher Typ: Variable wird a=5 und dann a=10 zugewiesen. Hier wird tatsächlich ein neues int-Wertobjekt 10 generiert und a zeigt darauf, und 5 wird verworfen, nicht geändert . Der Wert von a entspricht dem neu generierten a. 2. Variablentyp: Variablenzuweisung la=[1,2,3,4] und dann Zuweisung la[2]=5 ändert den Wert des dritten Elements der Liste la, la selbst hat kein It bewegt sich, aber einige seiner internen Werte werden geändert.Parameterübergabe der Python-Funktion:
1. Unveränderlicher Typ: ähnlich der C++-Wertübergabe, z. B. Ganzzahl, Zeichenfolge, Tupel. fun(a) überträgt beispielsweise nur den Wert von a und hat keinen Einfluss auf das a-Objekt selbst. Wenn Sie beispielsweise den Wert eines Inside fun(a) ändern, ändert sich nur ein anderes kopiertes Objekt und hat keine Auswirkungen auf a selbst.
2. Variablentyp: ähnlich der C++-Referenzübertragung, z. B. Liste und Wörterbuch. Zum Beispiel wird fun(la) tatsächlich la passieren. Nach der Änderung wird auch la außerhalb des Spaßes betroffen sein
(alles in Python ist ein Objekt, streng genommen können wir' Wir sollten nicht über die Übergabe von unveränderlichen Objekten und die Übergabe von veränderlichen Objekten sprechen)
Python übergibt unveränderliche Objektinstanzen: >
#!/usr/bin/python # -*- coding: UTF-8 -*- def ChangeInt( a ): a = 10 b = 2 ChangeInt(b) print b # 结果是 2
Python übergibt die Instanz des variablen Objekts:
#!/usr/bin/python # -*- coding: UTF-8 -*- # 可写函数说明 def changeme( mylist ): "修改传入的列表" mylist.append([1,2,3,4]); print "函数内取值: ", mylist return # 调用changeme函数 mylist = [10,20,30]; changeme( mylist ); print "函数外取值: ", mylist
函数内取值: [10, 20, 30, [1, 2, 3, 4]] 函数外取值: [10, 20, 30, [1, 2, 3, 4]]
Weitere Informationen zu diesem Thema finden Sie auf der chinesischen PHP-Website
Spalte „Python-Tutorial “.
Das obige ist der detaillierte Inhalt vonPython-Funktionsaufruf und Parameterübergabe (Beispielanalyse). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!