Programmierung & Skripten

Python -Pakete und Module

Python -Pakete und Module

Einführung

Wenn Sie in Python zusätzliche Funktionen benötigen, wenden Sie sich an die importieren Schlüsselwort zum Ziehen von Extras aus Python -Modulen. Sie haben gemeinsame wie die verwendet Mathematik Modul oft.

Jetzt lernen Sie, wie Sie Ihre eigenen Python -Module und -Pakete erstellen, um Ihren Code zu unterteilen. Module sind wie Klassen darin, dass sie Ihren Code modular machen. Während Klassen Code modular in einem Programm modular machen und als Blaupausen für Objekte dienen, machen Module alle Ihre Code modular über alle Programme hinweg und sind Dienstprogramme, die genauso verwendet werden, wie sie sind.

Durch die Verwendung von Modulen können Sie Ihre eigene Toolbox mit allen möglichen Teilen und Teilen erstellen, die Sie häufig verwenden. Module können alles enthalten, von Variablen und Konstanten bis hin zu Funktionen und sogar Klassen. Aufgrund dieser Vielseitigkeit können Sie sich so einrichten, dass alles, was Sie zu Beginn eines Projekts benötigen.

Ein Modul schreiben

Das Schreiben eines Moduls ist überhaupt nicht schwierig. Module sind eigentlich nur Python -Dateien. Es gibt nichts Besonderes an ihnen. Sie sind einfach anders strukturiert, weil sie eher als Toolkit oder Speicher als ein fließendes und funktionierendes Programm dienen.

Bevor Sie mit dem Schreiben eines Moduls beginnen, ist es eine gute Idee, ein Verzeichnis für die Arbeit zu errichten. Sofern das Modul nicht in Ihrer Systempython -Installation installiert ist, ist der Pfad des Moduls wichtig.

Erstellen Sie in Ihrem Verzeichnis zwei Dateien, Mathe.py Und prüfen.py.

Aufmachen Mathe.py und setzen Sie die folgenden weit herausragenden Funktionen ein.

Mathematik importieren def Pythag (a, b): Mathematik zurückgeben.SQRT (A + B) Def quadratisch (a, b, c): x1 = (-1*b + math.sqrt (b ** 2 - 4*a*c)) / (2*a) x2 = (-1*b - math.sqrt (b ** 2 - 4*a*c)) / (2*a) return [x1, x2] 

Beachten Sie, dass es eine gibt importieren auch hier. Sie können andere Module in ein Modul importieren und diese Aussagen als einfache Möglichkeit verwenden, Abhängigkeiten zu behandeln.

Das ist eigentlich alles, was Sie brauchen, um ein Python -Modul zu schreiben. Dieses Modul ist sehr einfach, aber Sie können deutlich sehen, was es tut. Wenn Sie ein Programm schreiben wollten, bei dem viele Funktionen erforderlich sind, um bestimmte Gleichungen zu lösen, können Sie ein Modul erstellen, um die Funktionen zu halten, die Sie häufig verwenden.

Importieren Sie Ihr Modul

Gehen Sie zu Ihrem prüfen.py. Öffnen Sie es und geben Sie einen Code ein, um das gerade erstellte Modul zu verwenden.

Aus mathStuff import quadratisch x_vals = quadratisch (10, 18, 6) für x in x_vals: print (x) 

Wie alle anderen Module, die Sie bisher verwendet haben, können Sie verwenden importieren Um es zu ziehen. Sie können auch verwenden aus Um nur die Teile auszuwählen, die Sie benötigen.

Von dort aus können Sie einfach die Funktionen aufrufen, die Sie importiert haben, als wären sie in derselben Datei wie der Rest Ihres Programms geschrieben wurden.

Dieses Beispiel verwendete Funktionen, da sie am häufigsten verwendet werden, aber Sie können genauso einfach mit Klassen oder Variablen arbeiten, und es ist genau das gleiche.

Organisation mit Paketen

In größeren Projekten besteht eine sehr gute Chance, dass eine einzige Moduldatei nicht gut passt. Eine Datei kann schnell mit viel Funktionen und Ballon zu einer unüberschaubaren Größe füllen. Hier kommen Pakete ins Spiel.

Python behandelt Pakete, genau wie es Module würde, aber Pakete ermöglichen es Ihnen, in Ihrer Programmierung stärker organisiert zu sein, und verteilen Sie in fortgeschritteneren Fällen Ihren Python -Code auf Repositories.

Pakete können nur Speicherstrukturen sein, in denen Sie Ihre Funktionen, Klassen und Variablen in verschiedenen Dateien kategorisieren und nach ihrem Anwendungsfall oder der Funktionalität sortieren. Sie können auch vollständige Funktionsteile sein, die vorgefertigt und verwendet werden können.

Stellen Sie sich vor, Sie sind freiberuflicher Entwickler, und Ihre Kunden bitten immer nach einem ähnlichen Funktionalität, um E -Mails aus ihren Bewerbungen zu senden. Sie können ein Paket erstellen, das all diese E -Mail -Funktionen enthält, und es an jedes Projekt anschließen. Es spart Ihnen eine Menge Zeit und könnte den Kunden Geld sparen. In diesem Fall ist die Verwendung von Paketen ein Allround-Sieg.

Ein Python -Paket im grundlegendsten Sinne ist nur ein Ordner mit einer Python -Datei, die genannt wird, __drin__.py. Diese Datei muss nichts enthalten. Es lässt Python nur wissen.

Erstellen Sie ein Paket mit dem Modul, das Sie bereits erstellt haben. Erstellen Sie ein neues Verzeichnis, wo Sie sich befinden, und erstellen Sie die __drin__.py drin und bewege deine Mathe.py auch in.

$ mkdir mathStuff $ touch mathStuff/__ init__.py $ mv MatheStuff.py mathStuff/ 

Wenn Sie Ihre ausführen prüfen.py Wieder wird es noch funktionieren. Dateien in Paketen mit demselben Namen können nur mit ihrem Namen importiert werden. Ändern Sie den Namen der Mathe.py Datei. Es wird nicht mehr funktionieren. Um andere Dateien in einem Paket zu verwenden, müssen Sie sie mit der Punktnotation importieren.

vom Paket.Dateiimportfunktion

Versuchen Sie, Ihre Importanweisung neu zu konfigurieren und erneut. Es wird so gut funktionieren wie zuvor.

Gedanken schließen

Die Verwendung von Modulen und Paketen kann Ihnen helfen, Ihren Code zu organisieren und alles modular wiederverwendbar zu halten. Sie können auch einen langen Beitrag zum Abschneiden Ihres Codes und zur Steigerung der Lesbarkeit leisten.

Übungen

  1. Erstellen Sie ein neues Modul mit ein paar Funktionen darin.
  2. Erstellen Sie eine Datei, um die Funktionen aus Ihrem Modul zu importieren und auszuführen.
  3. Konvertieren Sie Ihr Modul in ein Paket. Passen Sie Ihre Importe entsprechend an.
SCP- Handbuch Seite
Name SCP-Secure Copy (Remote-Dateikopieprogramm) Synopsis scp [-12346bcpqrv] [-c cipher] [-f SSH_CONFIG] [-i Identity_file] [-l limit] [-o ssh_option]...
Perl - CGI - Formular Senden Beispiel
Das folgende Beispiel für Perl/CGI. Notiz......
Wie man auf LAN aufwacht, unterstützte Host über das Netzwerk mit Linux
Wie man auf LAN aufwacht, unterstützte Host über das Netzwerk mit Linux...