Umfassende Zusammenfassung der Funktionen in Python (mit Beispielen)

不言
Freigeben: 2018-09-15 17:51:26
Original
1796 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine umfassende Zusammenfassung der Funktionen in Python (mit Beispielen). Freunde in Not können darauf verweisen.

1. Dynamische Parameter formaler Parameter: Dynamische Parameter, verwendet, wenn die Parameter unsicher sind

def fun (*args)
fun(args)
Nach dem Login kopieren

1. Positionsparameter dynamisch empfangen:

Beispiel 1. Wenn die Parameter unsicher sind, hat jeder zu diesem Zeitpunkt unterschiedliche Appetite und unterschiedliche Arten von Lebensmitteln dynamische Parameterübertragung.

def fun(*food):  #*表示的是不定参数,可以传递任意个信息,参数名称还是food,且接收到的信息为元祖()
    print("我要吃",food)
fun("米饭")    #*表示位置参数的动态传参    结果为我要吃 ('米饭',)
fun("一锅米饭","一箱辣条","一桶方便面","可口可乐")#我要吃 ('一锅米饭', '一箱辣条', '一桶方便面', '可口可乐')
fun ("一碗米饭","辣条","雪碧")  #结果为我要吃 ('一碗米饭', '辣条', '雪碧')
Nach dem Login kopieren

Liezi 2.

def fun (*food,a,b):
    print("我要吃",food,a,b)
fun("苹果","梨子","香蕉")  #此时程序会报错,全被food接收了,a和b永远接收不到参数.
def fun (a,b,*food):
    print("我要吃",a,b,food)
fun("苹果","梨子","香蕉","橘子")  #我要吃 苹果 梨子 ('香蕉', '橘子')
Nach dem Login kopieren

2. Wenn es Standardwertparameter gibt: Reihenfolge: Positionsparameter, dynamische Parameter*, Standardwert Parameter

def chi(a, b, *food, c="娃哈哈"):
    print(a, b, food, c)
chi("香蕉", "菠萝") #香蕉 菠萝 () 娃哈哈 默认值生效
chi("香蕉", "菠萝", "葫芦娃") #香蕉 菠萝 ('葫芦娃',) 娃哈哈 默认值生效
chi("香蕉", "菠萝", "葫芦娃", "口罩") # 香蕉 菠萝 ('葫芦娃', '口罩') 娃哈哈 默认值生效
chi("香蕉", "菠萝", "葫芦娃", "口罩",c="苹果")#香蕉 菠萝 ('葫芦娃', '口罩') 苹果
Nach dem Login kopieren

Zu diesem Zeitpunkt stellen wir fest, dass alle Standardwerte wirksam sind. Wenn Sie zu diesem Zeitpunkt keine Schlüsselwortparameter angeben, ist Ihr Standardwert immer wirksam.

3. Schlüsselwortparameter dynamisch empfangen (*): Positionsparameter> aber * kann in diesem Fall nur Positionsparameter empfangen, keine Schlüsselwortparameter. Verwenden Sie ** in Python, um dynamische Schlüsselwortparameter zu empfangen. (Formale Parameter haben nur zwei Typen: Positionsparameter und Standardwertparameter)
*args positional Parameter empfangen Tupel

**kwargs Schlüsselwort dynamische Parameter und empfangen Wörterbuch wie

def func(**kwargs): # key word arguments
    print(kwargs)  #{'a': 10, 'b': 20, 'jay': '周杰伦', 'jj': '林俊杰'}
func(a=10, b=20, jay="周杰伦", jj="林俊杰")
Nach dem Login kopieren
2. Alles kann verbunden werden

def fun(*args, **kwargs):
    print(args, kwargs)
fun("3","2",a="hello")  #('3', '2') {'a': 'hello'}
Nach dem Login kopieren

4. Die Bedeutung von * und ** in der tatsächlichen Parameterverwendung

1
* in der tatsächlichen Parameterposition bedeutet Aufbrechen. Was aufgebrochen wird, sind iterierbare Objekte wie Listen und Zeichenfolgen. Die formalen Parameter stellen die Aggregation dar

def func(*args): # Hier entspricht es der einmaligen Aggregation, Aggregation in ein Tupel
print(args) lst = "Wahaha"func(*lst) # * an der tatsächlichen Parameterposition bedeutet Aufbrechen, und das Aufbrechen ist das iterierbare Objekt
2. An der tatsächlichen Parameterposition** das Wörterbuch ist aufgelöst
def func(**kwargs): # ** Packe (aggregiere) die empfangenen Schlüsselwortparameter in ein Wörterbuch
print(kwargs) # Es muss Dictionary sein
dic = {"Zhang Wuji" : „Meister von Mingjiao“, „Xie Xun“: „Golden Retriever König der Löwen“, „Fan Yao“: „Rechter Gesandter des Lichts“ dic['Xie des Parameters, Wörterbuch Der Wert wird als Wert des Parameters an den formalen Parameter übergeben. Beide Ergebnisse sind die gleichen wie {'Zhang Wuji': 'The Leader of the Ming Cult', 'Xie Xun': 'The Golden Retriever „König der Löwen“, „Fan Yao“: „Der rechte Gesandte des Lichts“. und Werte einen Namen: Namespace Die py-Datei und alle gehören zum globalen Namensraum
2. In der Funktion deklarierte Variablen werden im lokalen Namensraum platziert
3 vom Python-Interpreter list, tuple, str, int, dies sind integrierte Namespaces
2. Ladereihenfolge:
1. Integrierte Namespaces 2. Globale Namespaces 3. Lokale Namespaces (wenn die Funktion ausgeführt wird). )
3. Wertreihenfolge:
1. Lokaler Namespace 2. Globaler Namespace 3. Integrierter Namespace
3. Geltungsbereich
ist der Geltungsbereich Es ist in einen globalen und einen lokalen Bereich unterteilt.

Globaler Bereich: Enthält einen integrierten Namespace und einen globalen Namespace. Er kann überall in der gesamten Datei verwendet werden (folgen Sie der Ausführung Zeile für Zeile von oben nach unten). Lokaler Bereich: Kann innerhalb einer Funktion verwendet werden.

Globaler Bereich: globaler Namespace + integrierter Namespace
Wir können den globalen Bereich anzeigen Bereich über die Funktion
globals()
Der Inhalt im Bereich kann auch über
locals()
angezeigt werden, um die Variablen- und Funktionsinformationen im lokalen Bereich anzuzeigen Im aktuellen Bereich

def fun():
    a=10
fun()
print(a)   #a 此时不存在
Nach dem Login kopieren


4. Die Verschachtelung von Funktionen verwendet hauptsächlich zwei Funktionen,

global und nichtlokal




global: Globale Variablen lokal einführen nicht lokal: Im lokalen Bereich können die Variablen der nächstgelegenen Schicht nicht in die Funktion der ersten Schicht eingeführt werden > Sie können es verstehen, indem Sie sich das Bild unten ansehen.

Verwandte Empfehlungen:

Zusammenfassung der in Python häufig verwendeten Funktionen Netzwerkprogrammierung
Vollständige Zusammenfassung der String-Funktionen in PHP

Das obige ist der detaillierte Inhalt vonUmfassende Zusammenfassung der Funktionen in Python (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage