Eine der besten Eigenschaften von Python, wie wir gesehen haben in Lieferungen Mein vorheriger Python-Programmierkurs unter Linux war folgender: Der Code kann in anderen Teilen der Anwendung oder in anderen Anwendungen wiederverwendet werden.
In diesem Beitrag werden wir sehen Wie man Programme innerhalb anderer Programme verwendet, ohne den Code einfügen oder eintippen zu müssen.Dies ist nützlich, da Python über eine Reihe von Bibliotheken für spezifische Aufgaben verfügt, die uns von der Arbeit befreien, das Rad neu erfinden zu müssen.
Python-Programmierkurs unter Linux
Bisher haben wir eine Funktion definiert und sie bei Bedarf aufgerufen. Nun führen wir das Konzept eines Moduls ein. Ein Modul ist eine Datei, in der Funktionen und Klassen definiert und Variablen deklariert werden. Da Module unabhängige Dateien sind, vereinfacht ihre Verwendung zum Erstellen großer Projekte die Wartung und Aktualisierung.
Python beinhaltet eine Reihe von Modulen für die unterschiedlichsten Aufgaben, und wir können auch unsere eigenen erstellen.
Die Vorteile der Verwendung von Modulen sind:
- Wiederverwendung: Wir können ein Programm einmal schreiben, das eine bestimmte Aufgabe erfüllt (zum Beispiel die Berechnung einer Steuer) und es dann in so vielen Programmen verwenden, wie wir diese Funktion benötigen, ohne den Code neu schreiben zu müssen.
- Bestellung: Die Module helfen dabei, die Teile des Projekts logisch zu unterteilen, sodass auch Personen mit minimalen Python-Kenntnissen verstehen können, was die einzelnen Teile des Programms bewirken.
- Mantenimiento: Je kürzer der Code, desto einfacher lassen sich Fehler finden und Änderungen vornehmen.
- Skalierbarkeit: Bei großen Projekten erleichtert die modulare Bauweise die Aufteilung und spätere Zusammenführung der Arbeiten.
- Buchhandlungen: Python bietet Programmierern eine breite Palette an Modulen, von der Spieleentwicklung bis hin zu großen Projekten im Bereich der künstlichen Intelligenz.
Um ein Python-Projekt korrekt in Modulen zu erstellen, müssen Sie die verschiedenen Teile aufteilen und in Dateien mit der Endung .py speichern. Idealerweise sollten Sie folgende Kriterien beachten:
- Identifizieren Teile des Codes, die ähnliche Funktionen ausführen: Zum Beispiel können wir die Datenerfassung in einem Modul, die Verarbeitung in einem anderen und die Ausgabe und Speicherung in einem dritten Modul gruppieren.
- Zuweisen Aussagekräftige Namen: Die Idee ist, dass jeder auf einen Blick erkennen kann, was jedes Modul bewirkt. Wenn es sich beispielsweise um ein Datenvalidierungsmodul handelt, ist es aussagekräftiger, es validation.py statt 1234.py zu nennen.
Wir werden ein Modul namens mostrar_distro.py erstellen. Dies ist das Modul:
Dieses Modul erstellt eine Funktion, die den Namen einer Distribution ausgibt, die in dem Programm, das die Funktion importiert, angegeben wird, zusammen mit dem Text „Die beste Distribution ist… Zweifeln Sie nicht daran“.
Dies ist die Anwendung, die das Modul aufruft.
Dieses Programm ruft das zuvor gespeicherte Modul auf, ruft die Funktion „distro“ auf und führt sie mit dem Parameter „Ubuntu“ aus. Änderungen im Modul, beispielsweise am Text neben dem Distributionsnamen, werden im Programm übernommen.
Die Importanweisung
Wie wir im Code gesehen haben, importieren wir ein Modul folgendermaßen:
import nombre_modulo
Die Erweiterung wurde nicht hinzugefügt.n.py
Wir müssen jedoch nicht das gesamte Modul importieren. Wir können auch nur bestimmte Teile importieren:
from nombre_modulo import elemento1, elemento2
Um Tipparbeit zu sparen oder Namenskonflikte zu vermeiden, kann dem importierten Modul ein Alias ​​zugewiesen werden.
import nombre_moulo as nm
Verwendung von nm in jeder Bezugnahme auf das Modul im Codenamen.
Wenn wir nicht jedes Mal auf das Modul verweisen wollen, wenn wir eines seiner Elemente aufrufen, können wir Folgendes tun:
from nombre_modulo import *
Dadurch können wir jedes Element des Moduls aus dem Code aufrufen, als hätten wir es selbst im Code definiert. Dies könnte jedoch zu Konflikten mit bereits vorhandenen Elementen führen.
Standort der Module
Im ersten Artikel des Kurses haben wir das Konzept virtueller Umgebungen erläutert. Diese Vorgehensweise, die unter Ubuntu und anderen Linux-Distributionen obligatorisch und unter Windows optional ist, erzeugt eine Dateistruktur mit Speicherorten für Module. Im Allgemeinen kann ein Modul an drei Orten gespeichert werden:
- Das Verzeichnis, in dem sich das Hauptprogramm befindet, das das Modul aufruft.
- Wenn Sie es mit einem Paketmanager installiert haben, befindet es sich im lib-Ordner der virtuellen Umgebung.
- In benutzerdefinierten Verzeichnissen wird der Speicherort im Importbefehl angegeben.
Arten von Modulen:
- Standardmodule: Sie sind in der Python-Installation enthalten und decken ein breites Spektrum gängiger Programmieraufgaben ab, wie beispielsweise die Generierung von Zufallszahlen. Sie erfordern keine zusätzliche Konfiguration und werden von denselben Entwicklern wie die Sprache selbst entwickelt.
- Benutzerentwickelte Module: Sie reagieren auf die spezifischen Bedürfnisse eines Projekts, und wenn sie anderen Benutzern in Foren oder auf Downloadseiten zur Verfügung gestellt werden, gibt es keine Garantie für offiziellen Support oder Updates.
- Wird von Dritten verwaltet: Sie werden mithilfe spezieller Paketmanager installiert und erfüllen gängige Bedürfnisse vieler Nutzer, die von Standardmodulen nicht abgedeckt werden, wie beispielsweise das Versenden von Nachrichten über WhatsApp. Obwohl sie in vielen Fällen von Unternehmen oder verantwortungsbewussten Nutzern mit vollständiger und aktueller Dokumentation gepflegt werden, wurden auch schädliche Pakete gefunden.
Beispiele für Standardmodule sind:
- Mathematik: Es bietet Unterstützung für mathematische Funktionen wie Wurzelberechnungen, Trigonometrie, Logarithmen und Konstanten.
- Zufällig: Es dient zur Erzeugung von Zufallszahlen und zur zufälligen Auswahl von Elementen.
- Datum/Uhrzeit: Kalenderverwaltung, Arbeiten mit Datum und Uhrzeit sowie Berechnung von Zeitdifferenzen.
- Os: Es befasst sich mit der Interaktion der Anwendung mit dem Betriebssystem, einschließlich der Arbeit mit Dateien, Verzeichnissen und Umgebungsvariablen.
Der pip-Paketmanager
Wie so viele Namen in der Welt der freien Software ist pip die rekursive Abkürzung für pip package installer (Paketinstallationsprogramm). Es handelt sich um das offizielle Tool zur Installation von Modulen von Drittanbietern. Wir können die Liste der verfügbaren Pakete einsehen. hier.
Die grundlegenden Befehle lauten:
Modul installieren
pip3 install nombre_modulo
Update-Modul
pip3 install --upgrade nombre_modulo.
Modul deinstallieren
pip3 uninstall nombre_modulo
Im nächsten Teil setzen wir den Kurs fort.