suchen

Python-Funktionen

Nov 23, 2016 am 10:38 AM
python

Eine Funktion ist ein organisiertes, wiederverwendbares Codesegment, das zur Implementierung einer einzelnen oder verwandten Funktion verwendet wird.

Funktionen können die Anwendungsmodularität und die Wiederverwendung von Code verbessern. Sie wissen bereits, dass Python viele integrierte Funktionen bietet, beispielsweise print(). Sie können aber auch eigene Funktionen erstellen, die als benutzerdefinierte Funktionen bezeichnet werden.

Funktion definieren

Sie können eine Funktion mit den gewünschten Funktionen definieren. Im Folgenden sind einfache Regeln aufgeführt:

Der Funktionscodeblock beginnt mit dem Schlüsselwort def, gefolgt von Funktionsbezeichnername und Klammern ().

Alle eingehenden Parameter und Argumente müssen in Klammern gesetzt werden. Parameter können in Klammern definiert werden.

Die erste Zeile einer Funktion kann optional einen Dokumentstring verwenden, der zum Speichern von Funktionsbeschreibungen verwendet wird.

Funktionsinhalte beginnen mit einem Doppelpunkt und werden eingerückt.

Return[expression] beendet die Funktion und gibt optional einen Wert an den Aufrufer zurück. Die Rückgabe ohne Ausdruck entspricht der Rückgabe von None.

Syntax

def functionname(parameters):

"Function_docstring"

function_suite

return [expression]

Standardmäßig werden Parameterwerte und Parameternamen in der in der Funktionsdeklaration definierten Reihenfolge abgeglichen.

Beispiel

Das Folgende ist eine einfache Python-Funktion, die eine Zeichenfolge als Eingabeparameter verwendet und sie auf einem Standardanzeigegerät ausgibt.

def printme(string):

"Drucken Sie den eingehenden String auf einem Standardanzeigegerät aus"

print string

Funktionsaufruf

Durch das Definieren einer Funktion wird der Funktion nur ein Name gegeben, die in der Funktion enthaltenen Parameter und die Codeblockstruktur angegeben.

Nachdem die Grundstruktur dieser Funktion fertiggestellt ist, können Sie sie über einen anderen Funktionsaufruf oder direkt über die Python-Eingabeaufforderung ausführen.

Die Funktion printme() wird im folgenden Beispiel aufgerufen:

#!/usr/bin/python

# Funktionsdefinition ist hier

def printme(string):

"Jeden eingehenden String drucken"

print string

# Jetzt können Sie die Funktion printme aufrufen

printme("Ich möchte eine benutzerdefinierte Funktion aufrufen!");

printme("Dieselbe Funktion noch einmal aufrufen") ;

Das obige Beispiel-Ausgabeergebnis:

Ich möchte einen Benutzer anrufen- definierte Funktion!

Gleiche Funktion erneut aufrufen

Parameter als Wert übergeben und Parameter als Referenz übergeben

Alle Parameter ( unabhängige Variablen) sind in Python Es wird als Referenz übergeben. Wenn Sie die Parameter in der Funktion ändern, werden die ursprünglichen Parameter auch in der Funktion geändert, die diese Funktion aufruft. Zum Beispiel:

#!/usr/bin/python

# Beschreibbare Funktionsbeschreibung

def changeme( mylist ):

„Ändern Sie die eingehende Liste“

mylist.append([1,2,3,4])

print „innerhalb der Funktion Wert: ", mylist

# Changeme-Funktion aufrufen

mylist = [10,20,30];

changeme(mylist);

print „Wert außerhalb der Funktion:“, mylist

Das an die Funktion übergebene Objekt und das Objekt zum Hinzufügen neuer Inhalte am Ende sind dasselbe Zitat. Daher lautet das Ausgabeergebnis wie folgt:

Wert innerhalb der Funktion: [10, 20, 30, [1, 2, 3, 4]]

Werte außerhalb der Funktion: [10, 20, 30, [1, 2, 3, 4]]

Parameter

Die folgenden formalen Parametertypen können beim Aufrufen von Funktionen verwendet werden:

Erforderliche Parameter

Benannte Parameter

Standardparameter

Variablenlänge Parameter

Erforderliche Parameter

Erforderliche Parameter müssen in der richtigen Reihenfolge an die Funktion übergeben werden. Die abgerufene Menge muss mit der deklarierten Menge übereinstimmen.

Beim Aufruf der printme()-Funktion müssen Sie einen Parameter übergeben, sonst kommt es zu einem Syntaxfehler:

#!/usr /bin/ python

#Schreibbare Funktionsbeschreibung

def printme(string):

„Jeden eingehenden String drucken“

Zeichenfolge drucken

#Rufen Sie die printme-Funktion auf

printme()

Das obige Beispiel wird ausgegeben das Ergebnis:

Traceback (letzter Aufruf zuletzt):

Datei „test.py“, Zeile 11, in

printme()

TypeError: printme() benötigt genau 1 Argument (0 gegeben)

Benannter Parameter

Benannte Parameter stehen in engem Zusammenhang mit Funktionsaufrufen. Der Aufrufer verwendet die Benennung von Parametern, um den Wert der übergebenen Parameter zu bestimmen. Sie können nicht übergebene Parameter überspringen oder Parameter in der falschen Reihenfolge übergeben, da der Python-Interpreter Parameternamen mit Parameterwerten abgleichen kann. Rufen Sie die Funktion printme() mit benannten Parametern auf:

#!/usr/bin/python

#Writable Funktionsbeschreibung

def printme(string):

„Jeden eingehenden String drucken“

print string

# Rufen Sie das printme auf Funktion

printme(str = "My string")

Das obige Beispiel-Ausgabeergebnis:

Mein String

Das folgende Beispiel zeigt deutlicher, dass die Reihenfolge der benannten Parameter nicht wichtig ist:

#!/usr/bin/python

#Schreibbare Funktionsbeschreibung

def printinfo(name, age):

„Jede eingehende Zeichenfolge drucken“

„Name:“ drucken, Name

„Alter“ drucken, Alter

# Rufen Sie die printinfo-Funktion auf

printinfo( age=50, name="miki" )

Ausgabeergebnis des obigen Beispiels:

Name: miki

Alter 50

Standardparameter

Wenn beim Aufrufen einer Funktion der Wert des Standardparameters nicht übergeben wird, wird er als Standardwert betrachtet. Das folgende Beispiel gibt das Standardalter aus, wenn das Alter nicht übergeben wird:

#!/usr/bin/python

#Schreibbare Funktionsbeschreibung

def printinfo(name, age = 35):

„Jede eingehende Zeichenfolge drucken“

print „Name:“, Name

print „Alter“, Alter

#Printinfo-Funktion aufrufen

printinfo(age=50, name="miki")

printinfo( name="miki" )

Das Ausgabeergebnis des obigen Beispiels:

Name: Miki

Alter 50

Name: Miki

Alter 35

Unbestimmte Länge Parameter

Möglicherweise benötigen Sie eine Funktion, die mehr Parameter verarbeiten kann als ursprünglich deklariert. Diese Parameter werden als Parameter variabler Länge bezeichnet und werden bei der Deklaration nicht benannt. Die grundlegende Syntax lautet wie folgt:

def functionname([formal_args,] *var_args_tuple):

"Function_docstring"

function_suite

return [expression]

Variablennamen mit einem Sternchen (*) speichern alle unbenannten Variablenparameter. Sie können sich auch dafür entscheiden, keine weiteren Parameter zu übergeben. Das folgende Beispiel:

#!/usr/bin/python

# Beschreibbare Funktionsbeschreibung

def printinfo(arg1, *vartuple):

„Alle übergebenen Argumente drucken“

print „Ausgabe: „

print arg1

für var in vartuple:

print var

# Printinfo-Funktion aufrufen

printinfo( 10 )

printinfo( 70, 60 , 50 )

Ausgabeergebnis des obigen Beispiels:

Ausgabe:

10

Ausgabe:

70

60

50

Anonyme Funktion

Verwenden Sie das Schlüsselwort Lambda, um eine kleine anonyme Funktion zu erstellen. Dieser Funktionstyp verdankt seinen Namen der Tatsache, dass der Standardschritt der Deklaration einer Funktion mit def weggelassen wird.

Lambda-Funktion kann eine beliebige Anzahl von Parametern empfangen, aber nur den Wert eines Ausdrucks zurückgeben und keine Befehle oder mehrere Ausdrücke enthalten.

Anonyme Funktionen können print nicht direkt aufrufen, da Lambda einen Ausdruck erfordert.

Die Lambda-Funktion verfügt über einen eigenen Namensraum und kann nicht auf Parameter außerhalb ihrer eigenen Parameterliste oder im globalen Namensraum zugreifen.

Obwohl die Lambda-Funktion scheinbar nur eine Zeile schreiben kann, entspricht sie nicht der Inline-Funktion von C oder C. Der Zweck der letzteren besteht darin, kleine Funktionen aufzurufen, ohne Stapelspeicher zu belegen und somit zu vergrößern Betriebseffizienz.

Grammatik

Die Syntax der Lambda-Funktion enthält nur eine Anweisung wie folgt:

lambda [arg1 [,arg2 ,. ....argn]]:expression

Das folgende Beispiel:

#! /usr/bin/python

#Schreibbare Funktionsbeschreibung

sum = lambda arg1, arg2: arg1 arg2

#Summenfunktion aufrufen

Drucken Sie „Wert der Gesamtsumme:“, Summe( 10, 20)

Drucken Sie „Wert der Gesamtsumme:“, Summe( 20, 20)

Das obige Beispiel-Ausgabeergebnis:

Wert der Gesamtsumme: 30

Wert insgesamt: 40

return-Anweisung

return-Anweisung [Ausdruck] beendet die Funktion und gibt optional einen Ausdruck an den Aufrufer zurück. Eine Return-Anweisung ohne Parameterwerte gibt None zurück. Die vorherigen Beispiele haben nicht gezeigt, wie ein Wert zurückgegeben wird. Das folgende Beispiel zeigt Ihnen, wie es geht:

#!/usr/bin/python

# Beschreibung der beschreibbaren Funktion

def sum(arg1, arg2):

#Gibt die Summe von 2 Parametern zurück."

total = arg1 arg2

print „Innerhalb der Funktion:“, total

return total

# Call sum function

total = sum( 10 , 20 );

print „Outside the function :“, total

Das Ausgabeergebnis des obigen Beispiels:

Innerhalb der Funktion: 30

Außerhalb der Funktion: 30

Variablenbereich

Nicht auf alle Variablen in einem Programm kann überall zugegriffen werden.

Der Gültigkeitsbereich der Variablen bestimmt, auf welchen Teil des Programms Sie zugreifen können . Welcher spezifische Variablenname ist wie folgt:

Globale Variable

Lokale Variable

Variable und lokale Variable

Variablen, die innerhalb einer Funktion definiert sind, haben einen lokalen Gültigkeitsbereich, und Variablen, die außerhalb der Funktion definiert sind, haben einen globalen Gültigkeitsbereich

Auf lokale Variablen kann nur innerhalb der Funktion zugegriffen werden, in der sie deklariert sind, während dies auf globale Variablen möglich ist Auf sie kann innerhalb der Funktion zugegriffen werden, in der sie im gesamten Programm aufgerufen werden. Beim Aufruf einer Funktion werden alle innerhalb der Funktion deklarierten Variablennamen zum Gültigkeitsbereich hinzugefügt:

#! /usr/bin/python

total = 0; # Dies ist eine globale Variable.

# Beschreibbare Funktionsbeschreibung

def sum( arg1, arg2 ):

#Gibt die Summe der 2 Parameter zurück.“

total = arg1 arg2; # total ist hier eine lokale Variable.

drucken „Innerhalb der Funktion local total :“, total

return total;

#Call sum function

sum(10, 20);

print " Außerhalb der Funktion global total : ", total

Das Ausgabeergebnis des obigen Beispiels:

Innerhalb der Funktion lokale Gesamtsumme: 30

Außerhalb der Funktion globale Gesamtsumme: 0

Stellungnahme
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
Python vs. C: Anwendungen und Anwendungsfälle verglichenPython vs. C: Anwendungen und Anwendungsfälle verglichenApr 12, 2025 am 12:01 AM

Python eignet sich für Datenwissenschafts-, Webentwicklungs- und Automatisierungsaufgaben, während C für Systemprogrammierung, Spieleentwicklung und eingebettete Systeme geeignet ist. Python ist bekannt für seine Einfachheit und sein starkes Ökosystem, während C für seine hohen Leistung und die zugrunde liegenden Kontrollfunktionen bekannt ist.

Der 2-stündige Python-Plan: ein realistischer AnsatzDer 2-stündige Python-Plan: ein realistischer AnsatzApr 11, 2025 am 12:04 AM

Sie können grundlegende Programmierkonzepte und Fähigkeiten von Python innerhalb von 2 Stunden lernen. 1. Lernen Sie Variablen und Datentypen, 2. Master Control Flow (bedingte Anweisungen und Schleifen), 3.. Verstehen Sie die Definition und Verwendung von Funktionen, 4. Beginnen Sie schnell mit der Python -Programmierung durch einfache Beispiele und Code -Snippets.

Python: Erforschen der primären AnwendungenPython: Erforschen der primären AnwendungenApr 10, 2025 am 09:41 AM

Python wird in den Bereichen Webentwicklung, Datenwissenschaft, maschinelles Lernen, Automatisierung und Skripten häufig verwendet. 1) In der Webentwicklung vereinfachen Django und Flask Frameworks den Entwicklungsprozess. 2) In den Bereichen Datenwissenschaft und maschinelles Lernen bieten Numpy-, Pandas-, Scikit-Learn- und TensorFlow-Bibliotheken eine starke Unterstützung. 3) In Bezug auf Automatisierung und Skript ist Python für Aufgaben wie automatisiertes Test und Systemmanagement geeignet.

Wie viel Python können Sie in 2 Stunden lernen?Wie viel Python können Sie in 2 Stunden lernen?Apr 09, 2025 pm 04:33 PM

Sie können die Grundlagen von Python innerhalb von zwei Stunden lernen. 1. Lernen Sie Variablen und Datentypen, 2. Master -Steuerungsstrukturen wie wenn Aussagen und Schleifen, 3. Verstehen Sie die Definition und Verwendung von Funktionen. Diese werden Ihnen helfen, einfache Python -Programme zu schreiben.

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden?Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden?Apr 02, 2025 am 07:18 AM

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer -Anfänger für Programmierungen? Wenn Sie nur 10 Stunden Zeit haben, um Computer -Anfänger zu unterrichten, was Sie mit Programmierkenntnissen unterrichten möchten, was würden Sie dann beibringen ...

Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet?Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet?Apr 02, 2025 am 07:15 AM

Wie kann man nicht erkannt werden, wenn Sie Fiddlereverywhere für Man-in-the-Middle-Lesungen verwenden, wenn Sie FiddLereverywhere verwenden ...

Was soll ich tun, wenn das Modul '__builtin__' beim Laden der Gurkendatei in Python 3.6 nicht gefunden wird?Was soll ich tun, wenn das Modul '__builtin__' beim Laden der Gurkendatei in Python 3.6 nicht gefunden wird?Apr 02, 2025 am 07:12 AM

Laden Sie Gurkendateien in Python 3.6 Umgebungsbericht Fehler: ModulenotFoundError: Nomodulennamen ...

Wie verbessert man die Genauigkeit der Jiebeba -Wortsegmentierung in der malerischen Spot -Kommentaranalyse?Wie verbessert man die Genauigkeit der Jiebeba -Wortsegmentierung in der malerischen Spot -Kommentaranalyse?Apr 02, 2025 am 07:09 AM

Wie löste ich das Problem der Jiebeba -Wortsegmentierung in der malerischen Spot -Kommentaranalyse? Wenn wir malerische Spot -Kommentare und -analysen durchführen, verwenden wir häufig das Jieba -Word -Segmentierungstool, um den Text zu verarbeiten ...

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung

EditPlus chinesische Crack-Version

EditPlus chinesische Crack-Version

Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.