Das Wesentliche und die erweiterten Funktionen von Python-Funktionen und -Modulen

Dieser Artikel stammt aus der Huawei Cloud Community „ The Essence and Advanced Features of Python Functions and Modules “ von Lemony Hug.

Python ist eine leistungsstarke Programmiersprache mit zahlreichen Funktionen und Modulen, die es Entwicklern ermöglichen, problemlos komplexe Anwendungen zu erstellen. In diesem Artikel wird die grundlegende Verwendung von Funktionen und Modulen in Python vorgestellt und einige Codebeispiele bereitgestellt.

1. Definition und Aufruf von Funktionen

Eine Funktion ist ein wiederverwendbarer Codeblock, der eine bestimmte Aufgabe ausführt. In Python verwenden wir Schlüsselwörter, um Funktionen zu definieren. def 

auf jeden Fall grüßen(Name):
    """Dies ist eine einfache Begrüßungsfunktion""
    print("Hallo, " + Name + "!")

Das Obige ist eine einfache Funktion , die einen Parameter annimmt und eine Begrüßung ausgibt. greet name

Um eine Funktion aufzurufen, verwenden Sie einfach den Funktionsnamen gefolgt von Klammern und übergeben Sie die Argumente (falls vorhanden).

grüße("Alice")

Dies wird Folgendes ausgeben:

Hallo, Alice!

2. Funktionsparameter

Python-Funktionen können mehrere Parameter akzeptieren und Standardparameter und Schlüsselwortparameter unterstützen.

def add(x, y=0):
    „““Diese Funktion fügt zwei Zahlen hinzu““
    gib x + y zurück

Im obigen Beispiel ist der Parameter ein Standardparameter mit dem Standardwert . y  0

Ergebnis = add(3, 5)
print(result) # Ausgabe 8

result = add(3) # Übergeben Sie den zweiten Parameter nicht, der Standardwert wird verwendet
print(result) # Ausgabe 3

3. Import und Nutzung von Modulen

Ein Python-Modul ist eine Sammlung von Python-Definitionen und -Anweisungen, die über Schlüsselwörter importiert werden können. import 

#Importieren Sie das Mathematikmodul in die Standardbibliothek
Mathematik importieren

#Verwenden Sie Funktionen im Mathematikmodul
print(math.sqrt(16)) # Ausgabe 4.0

Neben dem Import des gesamten Moduls können Sie auch bestimmte Funktionen innerhalb des Moduls importieren.

#Importieren Sie die sqrt-Funktion aus dem Mathematikmodul
from math import sqrt

# Verwenden Sie die sqrt-Funktion direkt
print(sqrt(25)) # Ausgabe 5.0

4. Erstellen Sie benutzerdefinierte Module

Zusätzlich zur Verwendung der von der Python-Standardbibliothek bereitgestellten Module können wir auch benutzerdefinierte Module erstellen.

Nehmen wir an, wir haben eine Datei namens , die eine einfache Funktion definiert. helper.py 

# helper.py

def double(x):
    """Multiplizieren Sie die angegebene Zahl mit 2""
    Rückgabe x * 2

Um dieses benutzerdefinierte Modul in anderen Python-Dateien zu verwenden, importieren Sie es einfach.

#Benutzerdefiniertes Modul importieren
Import-Helfer

# Funktionen in Modulen verwenden
print(helper.double(3)) # Ausgabe 6

Das Obige sind die grundlegenden Verwendungsmethoden und Codebeispiele von Python-Funktionen und -Modulen. Durch den sinnvollen Einsatz von Funktionen und Modulen können wir die Wiederverwendbarkeit und Wartbarkeit von Code verbessern und dadurch Anwendungen effizienter entwickeln.

5. Anonyme Funktion (Lambda-Funktion)

Neben der Verwendung von Schlüsselwörtern zur Definition von Funktionen unterstützt Python auch anonyme Funktionen, auch Lambda-Funktionen genannt. Mit Lambda-Funktionen können Sie einfache Funktionen in einer einzigen Codezeile definieren. def 

# Definieren Sie eine Lambda-Funktion, um die Summe zweier Zahlen zu berechnen
add = Lambda x, y: x + y

# Lambda-Funktion aufrufen
Ergebnis = add(3, 4)
print(result) # Ausgabe 7

Lambda-Funktionen werden typischerweise dort verwendet, wo eine einfache Funktion erforderlich ist, ohne eine vollständige Funktion zu definieren.

6. Integrierte Funktionen

Python bietet viele integrierte Funktionen, die Teil des Interpreters sind und direkt verwendet werden können, ohne dass Module importiert werden müssen.

# Verwenden Sie die integrierte Funktion abs(), um den Absolutwert zu ermitteln
print(abs(-5)) # Ausgabe 5

# Verwenden Sie die integrierte Funktion len(), um die Länge der Liste zu ermitteln
print(len([1, 2, 3, 4, 5])) # Ausgabe 5

Die Verwendung integrierter Funktionen macht die Ausführung allgemeiner Vorgänge in Python bequemer und effizienter.

7. Vorteile der modularen Programmierung

Modulare Programmierung ist ein Programmierstil, der ein Programm in unabhängige Module aufteilt, die sich jeweils auf eine bestimmte Aufgabe oder Funktion konzentrieren. Dieser Programmierstil hat viele Vorteile, darunter:

  • Wartbarkeit : Modularer Code ist einfacher zu verstehen und zu warten, da sich jedes Modul auf eine bestimmte Funktionalität konzentriert.
  • Wiederverwendbarkeit : Module können in verschiedenen Projekten wiederverwendet werden, um das wiederholte Schreiben gleichen Codes zu vermeiden.
  • Skalierbarkeit : Je nach Bedarf können neue Module hinzugefügt oder vorhandene Module ersetzt werden, um sich ändernden Anforderungen gerecht zu werden.

Durch die entsprechende Verwendung von Funktionen und Modulen können wir einen modulareren, wiederverwendbareren und wartbareren Code erreichen.

8. Erweiterte Funktionen: Dekorateure

Ein Dekorator ist eine spezielle Funktion, mit der das Verhalten anderer Funktionen geändert werden kann. In Python werden Dekoratoren häufig verwendet, um zusätzliche Funktionen wie Protokollierung, Profilerstellung oder Berechtigungsprüfung hinzuzufügen.

#Definieren Sie eine Dekoratorfunktion zum Aufzeichnen von Funktionsaufrufprotokollen
def log(func):
    def wrapper(*args, **kwargs):
        print(f"Funktion {func.__name__} aufrufen, Parameter: {args}, {kwargs}")
        return func(*args, **kwargs)
    Rückumschlag

# Dekorator anwenden
@Protokoll
def add(x, y):
    gib x + y zurück

# Rufen Sie die dekorierte Funktion auf
Ergebnis = add(3, 4)
print(result) # Ausgabe 7

Im obigen Beispiel log ist die Funktion ein Dekorator, der eine Funktion als Argument akzeptiert und eine neue Funktion zurückgibt . Die Funktion protokolliert, bevor sie die dekorierte Funktion aufruft, ruft dann die ursprüngliche Funktion auf und gibt das Ergebnis zurück. wrapperwrapper 

9. Erweiterte Funktionen: Generatoren

Ein Generator ist eine spezielle Funktion, die eine Folge von Werten generiert, anstatt sie alle auf einmal zurückzugeben. Diese verzögerte Berechnung spart Speicher und verbessert die Leistung.

# Definieren Sie eine Generatorfunktion zum Generieren von Fibonacci-Zahlen
def Fibonacci(n):
    a, b = 0, 1
    für _ im Bereich(n):
        Ertrag a
        a, b = b, a + b

# Generator verwenden
für ob in Fibonacci (10):
    print(num, end=" ") # Gibt die ersten 10 Zahlen der Fibonacci-Folge aus

Generatorfunktionen verwenden Schlüsselwörter, um Werte zu generieren, und jedes Mal, wenn die Methode des Generators aufgerufen wird, setzt die Funktion die Ausführung an der Stelle fort, an der sie zuletzt angehalten wurde, bis die nächste gefunden wird . yield  next()  yield

10. Erweiterte Funktionen von Funktionen: Rekursion

Rekursion ist eine Programmiertechnik, bei der sich eine Funktion selbst aufruft und häufig zur Lösung von Problemen verwendet wird, die in kleinere Teilprobleme zerlegt werden können.

# Definieren Sie eine rekursive Funktion zur Berechnung der Fakultät
def Fakultät(n):
    wenn n == 0:
        Rückkehr 1
    anders:
        Rückgabe n * Fakultät(n - 1)

# Verwenden Sie rekursive Funktionen
Ergebnis = Fakultät(5)
print(result) # Ausgabe 120

Im obigen Beispiel factorial ruft sich die Funktion selbst auf, um die Fakultät zu berechnen.

11. Funktionale Programmierung

Python unterstützt das Paradigma der funktionalen Programmierung, was bedeutet, dass Funktionen als Variablen, als Argumente an andere Funktionen und sogar als Rückgabewerte von Funktionen übergeben werden können. Dieser Ansatz kann den Code prägnanter und lesbarer machen.

# Definieren Sie eine Funktion, die jedes Element in der Liste verdoppelt
def double_elements(nums):
    return [num * 2 für num in nums]

# Definieren Sie eine Funktion, die jedem Element in der Liste eins hinzufügt
def increment_elements(nums):
    return [num + 1 für num in nums]

# Definieren Sie eine Funktion, die auf jedes Element der Liste eine andere Funktion anwendet
def apply_function_to_elements(nums, func):
    return [func(num) für num in nums]

# Verwenden Sie funktionale Programmierung
meine_liste = [1, 2, 3, 4, 5]
doubled_list = apply_function_to_elements(my_list, lambda x: x * 2)
print(doubled_list) # Ausgabe [2, 4, 6, 8, 10]

incremented_list = apply_function_to_elements(my_list, lambda x: x + 1)
print(incremented_list) # Ausgabe [2, 3, 4, 5, 6]

Im obigen Beispiel apply_function_to_elements akzeptiert die Funktion eine Funktion als Argument und wendet die Funktion auf jedes Element in der Liste an.

12. Vorteile der funktionalen Programmierung

Funktionale Programmierung hat viele Vorteile, darunter:

  • Einfachheit : Funktionale Programmierung erreicht oft die gleiche Funktionalität mit weniger Code.
  • Lesbarkeit : Die funktionale Programmierung legt den Schwerpunkt auf die Kombination und Transformation von Funktionen, wodurch der Code leichter verständlich wird.
  • Unveränderlichkeit : Daten in der funktionalen Programmierung sind oft unveränderlich, was bedeutet, dass es einfacher ist, über Programme nachzudenken und sie zu debuggen.
  • Parallelität : Funktionale Programmierung fördert reine Funktionen, die den externen Zustand nicht ändern und daher einfacher parallel zu verarbeiten sind.

Durch die entsprechende Verwendung des Paradigmas der funktionalen Programmierung können wir klareren, prägnanteren und wartbareren Code schreiben.

Zusammenfassen

In diesem Artikel werfen wir einen detaillierten Blick auf die Verwendung von Funktionen und Modulen in Python sowie auf einige erweiterte Funktionen. Im Folgenden sind die zusammenfassenden Punkte dieses Artikels aufgeführt:

  1. Grundlegende Verwendung von Funktionen : Wir haben gelernt, wie man Funktionen definiert, Parameter übergibt und Funktionen aufruft. Funktionen in Python sind wiederverwendbare Codeblöcke, die bestimmte Aufgaben ausführen.

  2. Funktionsparameter : Wir haben eingeführt, dass Funktionen mehrere Parameter akzeptieren können, einschließlich Standardparametern und Schlüsselwortparametern. Dadurch wird die Funktion flexibler und kann an unterschiedliche Nutzungsszenarien angepasst werden.

  3. Import und Verwendung von Modulen : Wir haben gelernt, wie man Python-Module importiert und Funktionen und Variablen in den Modulen verwendet. Module sind die Bausteine ​​von Python-Programmen, die dabei helfen, Code zu organisieren und wiederzuverwenden.

  4. Erweiterte Funktionen von Funktionen : Wir befassen uns mit einigen der erweiterten Funktionen von Funktionen, darunter Dekoratoren, Generatoren, Rekursion und funktionale Programmierung. Diese Funktionen machen die Funktionen flexibler und leistungsfähiger und können verschiedenen Programmieranforderungen gerecht werden.

  5. Vorteile der modularen Programmierung : Wir haben die Vorteile der modularen Programmierung besprochen, einschließlich Wartbarkeit, Wiederverwendbarkeit und Erweiterbarkeit. Die ordnungsgemäße Verwendung von Funktionen und Modulen kann die Effizienz und Qualität des Codes verbessern.

Durch das Studium dieses Artikels sollten Sie ein tieferes Verständnis für die Verwendung von Funktionen und Modulen in Python erlangen, einige erweiterte Funktionen beherrschen und diese flexibler zur Lösung praktischer Probleme einsetzen können. Lernen und erforschen Sie weiterhin die Python-Programmierung und Sie werden in der Lage sein, eleganteren und effizienteren Code zu schreiben.

 

Klicken Sie hier, um zu folgen und so schnell wie möglich mehr über die neuen Technologien von Huawei Cloud zu erfahren~

 

Wie viel Umsatz kann ein unbekanntes Open-Source-Projekt bringen? Das chinesische KI-Team von Microsoft hat zusammengepackt und ist mit Hunderten von Menschen in die USA gegangen. Huawei gab offiziell bekannt, dass Yu Chengdongs Jobwechsel an der „FFmpeg-Säule der Schande“ festgenagelt wurden vor, aber heute muss er uns danken – Tencent QQ Video rächt seine vergangene Demütigung? Die Open-Source-Spiegelseite der Huazhong University of Science and Technology ist offiziell für den externen Zugriff geöffnet. Bericht: Django ist immer noch die erste Wahl für 74 % der Entwickler. Zed-Editor hat Fortschritte bei der Linux-Unterstützung gemacht brachte die Nachricht: Nachdem er von einem Untergebenen herausgefordert wurde, wurde der technische Leiter wütend und unhöflich, wurde entlassen und schwanger. Die Mitarbeiterin von Alibaba Cloud veröffentlicht offiziell Tongyi Qianwen 2.5. Microsoft spendet 1 Million US-Dollar an die Rust Foundation
{{o.name}}
{{m.name}}

Ich denke du magst

Origin my.oschina.net/u/4526289/blog/11110338
Empfohlen
Rangfolge