Heim Backend-Entwicklung PHP-Tutorial Detaillierte Erläuterung von drei Methoden zum Importieren benutzerdefinierter Module in Python3

Detaillierte Erläuterung von drei Methoden zum Importieren benutzerdefinierter Module in Python3

May 16, 2018 pm 01:47 PM
python3 自定义

Dieser Artikel führt Sie hauptsächlich in die drei Methoden zum Importieren benutzerdefinierter Module in Python3 ein. Der Artikel führt sie ausführlich anhand von Beispielcode ein, der für das Studium oder die Arbeit eines jeden einen gewissen Referenzlernwert hat

Vorwort

Ich habe kürzlich den Modulabschnitt aus Liao Xuefengs Tutorial gelernt. Wenn Sie nicht verstehen, wie Sie ein Modul anpassen, werfen wir zunächst einen Blick auf die grundlegende Einführung:

Module

In die Entwicklung von Computerprogrammen Je mehr Programmcode geschrieben wird, desto länger wird der Code in einer Datei, wodurch die Wartung immer schwieriger wird.

Um wartbaren Code zu schreiben, gruppieren wir viele Funktionen und legen sie in verschiedene Dateien ab. Auf diese Weise enthält jede Datei relativ wenig Code. In Python wird eine .py-Datei als Modul bezeichnet.

Welche Vorteile bietet der Einsatz von Modulen?

Der größte Vorteil besteht darin, dass es die Wartbarkeit des Codes erheblich verbessert. Zweitens müssen Sie beim Schreiben von Code nicht bei Null anfangen. Wenn ein Modul geschrieben wird, kann es an anderer Stelle referenziert werden. Wenn wir Programme schreiben, beziehen wir uns häufig auf andere Module, einschließlich der in Python integrierten Module und Module von Drittanbietern.

Durch die Verwendung von Modulen können auch Konflikte zwischen Funktionsnamen und Variablennamen vermieden werden. Funktionen und Variablen mit demselben Namen können in verschiedenen Modulen vorhanden sein. Wenn wir das Modul selbst schreiben, müssen wir daher nicht berücksichtigen, dass der Name mit anderen Modulen in Konflikt steht. Achten Sie aber auch darauf, dass es nicht zu Konflikten mit integrierten Funktionsnamen kommt. Klicken Sie hier, um alle integrierten Funktionen von Python anzuzeigen.

Sie denken vielleicht auch: Was wäre, wenn verschiedene Leute Module mit demselben Namen schreiben? Um Konflikte bei Modulnamen zu vermeiden, hat Python eine Methode zum Organisieren von Modulen nach Verzeichnis eingeführt, die als Paket bezeichnet wird.

Zum Beispiel ist eine Datei abc.py ein Modul namens abc und eine Datei xyz.py ist ein Modul namens xyz.

Angenommen, unsere beiden Modulnamen abc und xyz stehen in Konflikt mit anderen Modulen, sodass wir die Module durch Pakete organisieren können, um Konflikte zu vermeiden. Die Methode besteht darin, einen Paketnamen der obersten Ebene auszuwählen, z. B. mycompany, und ihn im folgenden Verzeichnis zu speichern:

mycompany
├─ __init__.py
├─ abc.py
└─ xyz.py

Nach der Einführung des Pakets treten keine Konflikte mit anderen Modulen auf, solange der Paketname der obersten Ebene nicht mit anderen in Konflikt steht. Jetzt wird der Modulname von abc.py zu mycompany.abc, ebenso wird der Modulname von xyz.py zu mycompany.xyz.

Bitte beachten Sie, dass sich unter jedem Paketverzeichnis eine Datei __init__.py befindet. Diese Datei muss vorhanden sein, andernfalls behandelt Python dieses Verzeichnis als normales Verzeichnis und nicht als Paket. __init__.py kann eine leere Datei sein oder Python-Code enthalten, da __init__.py selbst ein Modul ist und sein Modulname mycompany ist.

Ebenso kann es mehrstufige Verzeichnisse geben, um eine mehrstufige Paketstruktur zu bilden. Beispielsweise die folgende Verzeichnisstruktur:

mycompany
├─ web
│ ├─ __init__.py
│ ├─ utils.py
│ └─ www.py
├ ─ __init__.py
├─ abc.py
└─ xyz.py

Der Modulname der Datei www.py ist mycompany.web.www und die Modulnamen der Die beiden Dateien utils.py sind jeweils mycompany.utils und mycompany.web.utils.

Wenn Sie Ihr eigenes Modul erstellen, sollten Sie auf die Benennung achten, da diese nicht mit dem mit Python gelieferten Modulnamen in Konflikt geraten darf. Wenn das System beispielsweise mit dem sys-Modul geliefert wird, darf Ihr Modul nicht sys.py heißen, da Sie sonst das mit dem System gelieferte sys-Modul nicht importieren können.

mycompany.web ist ebenfalls ein Modul. Bitte weisen Sie auf die diesem Modul entsprechende .py-Datei hin.

Zusammenfassung

Ein Modul ist eine Sammlung von Python-Codes, die andere Module verwenden können und auch von anderen Modulen verwendet werden können.

Bitte beachten Sie beim Erstellen Ihres eigenen Moduls:

  • Der Modulname muss der Python-Variablennamenskonvention folgen und darf keine chinesischen oder Sonderzeichen verwenden

  • Der Modulname sollte nicht mit dem Systemmodulnamen in Konflikt stehen. Überprüfen Sie am besten, ob das Modul bereits in der interaktiven Python-Umgebung vorhanden ist Erfolgreich ist, bedeutet dies, dass dieses Modul im System vorhanden ist.

Module sind eine gute Sache. Die Experten teilen viele Module in Open Source, was auch die Entwicklung aller beschleunigt.

Weil ich gerade erst am Anfang stehe Ich verstehe viele Details im Internet nicht. Als ich nach Informationen suchte, stellte ich fest, dass die Anleitungen der Experten zu prägnant waren, was es für mich als Anfänger sehr schwierig machte, erfolgreich zu sein.

Also nimm es hier auf.

Starten

Der erste Weg ist der direkte Import

Hier gibt es eine wichtige Voraussetzung , das heißt, Ihre py-Ausführungsdatei und Ihr Modul gehören zum selben Verzeichnis (übergeordnetes Verzeichnis), wie unten gezeigt:

  • main.py und pwcong-Modul sind zusammen Das Python-Verzeichnis

  • Ausführungsdatei ist main.py

  • pwcong-Ordner ist ein Modul

Ich habe die vom pwcong-Modul bereitgestellten Funktionen in __init__.py geschrieben, das nur eine Hi-Funktion bereitstellt:

# pwcong 模块的 __init__.py
# -*- coding: utf-8 -*-
def hi():
 print("hi")
Nach dem Login kopieren

Führen Sie die Datei main.py aus, um das Modul direkt zu importieren :

# main.py
# -*- coding: utf-8 -*-
import pwcong
pwcong.hi()
Nach dem Login kopieren

Dann führen wir main.py aus und wir können sehen, dass das Befehlszeilenfenster den Satz „hi“ ausgibt. Die erste Methode ist abgeschlossen.

Die Art und Weise, das Modul zu verwenden, ist: Zuerst importieren -> dann die module.variable|Funktion eingeben, wie z. B. pwcong.hi() im obigen Beispiel

Zweitens importieren Sie den Pfad des benutzerdefinierten Moduls über das sys-Modul

Wenn sich die ausführbare Datei und das Modul nicht im selben Verzeichnis befinden, kann das benutzerdefinierte Modul nicht gefunden werden Direktimport. Wie unten gezeigt:

  • Die Ausführungsdatei main.py befindet sich im Hauptverzeichnis

  • Der pwcong Modul befindet sich im Python-Verzeichnis Weiter

Das sys-Modul ist in Python integriert, daher sind die Schritte für uns zum Importieren eines benutzerdefinierten Moduls wie folgt:

  1. Importieren Sie zuerst das Systemmodul

  2. Dann verwenden Sie die Funktion sys.path.append(path) , um das Verzeichnis zu importieren, in dem sich das benutzerdefinierte Modul befindet

  3. Importieren Sie das benutzerdefinierte Modul.

Zu diesem Zeitpunkt wird main.py wie folgt geschrieben:

# main.py
# -*- coding: utf-8 -*-
import sys
sys.path.append(r"C:\Users\Pwcong\Desktop\python")
import pwcong
pwcong.hi()
Nach dem Login kopieren

Führen Sie schließlich die Datei main.py aus und geben Sie schließlich hi aus. Die zweite Methode ist abgeschlossen .

Die dritte Methode besteht darin, das benutzerdefinierte Modul über die pth-Datei zu finden

Das Prinzip dieser Methode besteht darin, Systemvariablen zu verwenden, um den Pfad zu scannen Variable zum Importieren des Moduls. Sie können es dem Systempfad hinzufügen. Ich empfehle jedoch weiterhin die Verwendung der pth-Datei-Ergänzung.

Die Modul- und ausführbare Dateiverzeichnisstruktur ist die gleiche wie im Bild unten:

  • Die ausführbare Datei main.py befindet sich in das Hauptverzeichnis

  • Das pwcong-Modul befindet sich im Python-Verzeichnis

Wir erstellen eine module_pwcong.pth-Datei, deren Inhalt das Verzeichnis ist wo sich das pwcong-Modul befindet:

C:UsersPwcongDesktoppython

Legen Sie die Datei module_pwcong.pth hier ab:

Python-Installationsverzeichnis Python35Libsite-packages

Zum Beispiel meins:

Dann importiert und verwendet main.py das benutzerdefinierte Modul:

# -*- coding: utf-8 -*-
import pwcong
pwcong.hi()
Nach dem Login kopieren

Führen Sie schließlich das aus Mit der main.py-Datei können Sie die Ausgabe auf die dritte Art und Weise beenden.




Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung von drei Methoden zum Importieren benutzerdefinierter Module in Python3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

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

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So richten Sie schnell einen benutzerdefinierten Avatar in Netflix ein So richten Sie schnell einen benutzerdefinierten Avatar in Netflix ein Feb 19, 2024 pm 06:33 PM

Ein Avatar auf Netflix ist eine visuelle Darstellung Ihrer Streaming-Identität. Benutzer können über den Standard-Avatar hinausgehen, um ihre Persönlichkeit auszudrücken. Lesen Sie diesen Artikel weiter, um zu erfahren, wie Sie in der Netflix-App ein benutzerdefiniertes Profilbild festlegen. So legen Sie schnell einen benutzerdefinierten Avatar in Netflix fest. In Netflix gibt es keine integrierte Funktion zum Festlegen eines Profilbilds. Sie können dies jedoch tun, indem Sie die Netflix-Erweiterung in Ihrem Browser installieren. Installieren Sie zunächst ein benutzerdefiniertes Profilbild für die Netflix-Erweiterung in Ihrem Browser. Sie können es im Chrome Store kaufen. Öffnen Sie nach der Installation der Erweiterung Netflix in Ihrem Browser und melden Sie sich bei Ihrem Konto an. Navigieren Sie zu Ihrem Profil in der oberen rechten Ecke und klicken Sie

So passen Sie das Hintergrundbild in Win11 an So passen Sie das Hintergrundbild in Win11 an Jun 30, 2023 pm 08:45 PM

Wie kann ich das Hintergrundbild in Win11 anpassen? Im neu veröffentlichten Win11-System gibt es viele benutzerdefinierte Funktionen, aber viele Freunde wissen nicht, wie sie diese Funktionen verwenden sollen. Einige Freunde denken, dass das Hintergrundbild relativ eintönig ist und möchten das Hintergrundbild anpassen, wissen aber nicht, wie man das Hintergrundbild anpasst. Wenn Sie nicht wissen, wie Sie das Hintergrundbild definieren, hat der Editor die Schritte dazu zusammengestellt Passen Sie das Hintergrundbild in Win11 unten an. Wenn Sie interessiert sind, schauen Sie sich unten um. Schritte zum Anpassen von Hintergrundbildern in Win11: 1. Klicken Sie auf dem Desktop auf die Schaltfläche „Win“ und dann im Popup-Menü auf „Einstellungen“, wie in der Abbildung dargestellt. 2. Rufen Sie das Einstellungsmenü auf und klicken Sie auf Personalisierung, wie in der Abbildung gezeigt. 3. Geben Sie „Personalisierung“ ein und klicken Sie auf „Hintergrund“, wie im Bild gezeigt. 4. Geben Sie die Hintergrundeinstellungen ein und klicken Sie, um Bilder zu durchsuchen

Wie erstelle und passe ich Venn-Diagramme in Python an? Wie erstelle und passe ich Venn-Diagramme in Python an? Sep 14, 2023 pm 02:37 PM

Ein Venn-Diagramm ist ein Diagramm zur Darstellung von Beziehungen zwischen Mengen. Um ein Venn-Diagramm zu erstellen, verwenden wir Matplotlib. Matplotlib ist eine häufig verwendete Datenvisualisierungsbibliothek in Python zum Erstellen interaktiver Diagramme und Grafiken. Es wird auch zum Erstellen interaktiver Bilder und Diagramme verwendet. Matplotlib bietet viele Funktionen zum Anpassen von Diagrammen und Grafiken. In diesem Tutorial veranschaulichen wir drei Beispiele zum Anpassen von Venn-Diagrammen. Die chinesische Übersetzung von Beispiel lautet: Beispiel Dies ist ein einfaches Beispiel für die Erstellung der Schnittmenge zweier Venn-Diagramme. Zuerst haben wir die erforderlichen Bibliotheken importiert und Venns importiert. Dann erstellen wir den Datensatz als Python-Set und verwenden anschließend die Funktion „venn2()“ zum Erstellen

So passen Sie die Tastenkombinationseinstellungen in Eclipse an So passen Sie die Tastenkombinationseinstellungen in Eclipse an Jan 28, 2024 am 10:01 AM

Wie kann ich die Tastenkombinationseinstellungen in Eclipse anpassen? Als Entwickler ist die Beherrschung von Tastenkombinationen einer der Schlüssel zur Effizienzsteigerung beim Codieren in Eclipse. Als leistungsstarke integrierte Entwicklungsumgebung bietet Eclipse nicht nur viele Standard-Tastenkombinationen, sondern ermöglicht Benutzern auch, diese nach ihren eigenen Vorlieben anzupassen. In diesem Artikel wird erläutert, wie Sie die Tastenkombinationseinstellungen in Eclipse anpassen, und es werden spezifische Codebeispiele gegeben. Öffnen Sie Eclipse. Öffnen Sie zunächst Eclipse und geben Sie ein

Wie erstelle ich eine benutzerdefinierte Paginierung in CakePHP? Wie erstelle ich eine benutzerdefinierte Paginierung in CakePHP? Jun 04, 2023 am 08:32 AM

CakePHP ist ein leistungsstarkes PHP-Framework, das Entwicklern viele nützliche Tools und Funktionen bietet. Eine davon ist die Paginierung, die uns hilft, große Datenmengen auf mehrere Seiten aufzuteilen und so das Durchsuchen und Bearbeiten zu erleichtern. Standardmäßig stellt CakePHP einige grundlegende Paginierungsmethoden bereit, aber manchmal müssen Sie möglicherweise einige benutzerdefinierte Paginierungsmethoden erstellen. In diesem Artikel erfahren Sie, wie Sie in CakePHP eine benutzerdefinierte Paginierung erstellen. Schritt 1: Erstellen Sie eine benutzerdefinierte Paginierungsklasse. Zuerst müssen wir eine benutzerdefinierte Paginierungsklasse erstellen. Das

So aktivieren und passen Sie Überblendungen in Apple Music auf dem iPhone mit iOS 17 an So aktivieren und passen Sie Überblendungen in Apple Music auf dem iPhone mit iOS 17 an Jun 28, 2023 pm 12:14 PM

Das iOS 17-Update für das iPhone bringt einige große Änderungen für Apple Music. Dazu gehört die Zusammenarbeit mit anderen Benutzern an Playlists, das Starten der Musikwiedergabe von verschiedenen Geräten bei Verwendung von CarPlay und mehr. Eine dieser neuen Funktionen ist die Möglichkeit, Überblendungen in Apple Music zu verwenden. Dadurch können Sie nahtlos zwischen den Titeln wechseln, was beim Anhören mehrerer Titel eine tolle Funktion ist. Crossfading trägt dazu bei, das Hörerlebnis insgesamt zu verbessern und stellt sicher, dass Sie nicht erschrecken oder aus dem Hörerlebnis aussteigen, wenn der Titel wechselt. Wenn Sie diese neue Funktion optimal nutzen möchten, erfahren Sie hier, wie Sie sie auf Ihrem iPhone verwenden. So aktivieren und passen Sie Crossfade für Apple Music an. Sie benötigen die neueste Version

So implementieren Sie benutzerdefinierte Middleware in CodeIgniter So implementieren Sie benutzerdefinierte Middleware in CodeIgniter Jul 29, 2023 am 10:53 AM

So implementieren Sie benutzerdefinierte Middleware in CodeIgniter Einführung: In der modernen Webentwicklung spielt Middleware eine wichtige Rolle in Anwendungen. Sie können verwendet werden, um eine gemeinsame Verarbeitungslogik auszuführen, bevor oder nachdem die Anforderung den Controller erreicht. CodeIgniter unterstützt als beliebtes PHP-Framework auch den Einsatz von Middleware. In diesem Artikel wird die Implementierung benutzerdefinierter Middleware in CodeIgniter vorgestellt und ein einfaches Codebeispiel bereitgestellt. Middleware-Übersicht: Middleware ist eine Art Anfrage

Renderfunktion in Vue3: benutzerdefinierte Rendering-Funktion Renderfunktion in Vue3: benutzerdefinierte Rendering-Funktion Jun 18, 2023 pm 06:43 PM

Vue ist ein beliebtes JavaScript-Framework, das viele praktische Funktionen und APIs bereitstellt, um Entwicklern beim Erstellen interaktiver Front-End-Anwendungen zu helfen. Mit der Veröffentlichung von Vue3 ist die Renderfunktion zu einem wichtigen Update geworden. In diesem Artikel werden das Konzept und der Zweck der Renderfunktion in Vue3 sowie deren Verwendung zum Anpassen der Renderfunktion vorgestellt. Was ist die Renderfunktion? In Vue ist die Vorlage die am häufigsten verwendete Rendermethode, aber in Vue3 können Sie eine andere Methode verwenden: r

See all articles