Heim  >  Artikel  >  Backend-Entwicklung  >  Schreiben Sie Ihr eigenes Python-Modul

Schreiben Sie Ihr eigenes Python-Modul

little bottle
little bottlenach vorne
2019-04-09 13:21:422240Durchsuche

Tatsächlich gibt es eine ganze Reihe von Python-Tutorials online. Es ist sehr einfach, ein eigenes Modul zu schreiben. Denn jedes Python-Programm ist auch ein Modul. Sie müssen nur sicherstellen, dass es die Erweiterung .py hat. Die folgenden Fälle liefern eine klare Erklärung.

Fall (speichern als mymodule.py):

import mymodule

mymodule.say_hi()
print('Version', mymodule.__version__)

Was oben dargestellt ist, ist ein einfaches Modul. Wie Sie sehen, gibt es keinen besonderen Unterschied zu den Python-Programmen, die wir normalerweise verwenden. Als nächstes werden wir sehen, wie man dieses Modul in anderen Python-Programmen verwendet.

Denken Sie daran, dass dieses Modul im selben Verzeichnis wie die anderen Programme, in die wir dieses Modul importieren möchten, oder in einem der in sys.path aufgeführten Verzeichnisse abgelegt werden sollte.

Ein weiteres Modul (speichern unter mymodule_demo.py):

import mymodule

mymodule.say_hi()print('Version', mymodule.__version__)

Ausgabe:

$ python mymodule_demo.py
Hi, this is mymodule speaking.
Version 0.1

Wie es funktioniert

Sie werden feststellen, dass wir dasselbe verwenden Punktnotation für den Zugriff auf Mitglieder im Modul. Python leistet gute Arbeit bei der Wiederverwendung von Symbolen, was ihm ein „Pythonisches“-Feeling verleiht, sodass wir nicht neue Methoden erlernen müssen, um dasselbe zu tun.

Das Folgende ist eine Vorlage, die die from...import-Syntax verwendet (speichern als mymodule_demo2.py): Der von

from mymodule import say_hi, __version__
say_hi()
print('Version', __version__)

mymodule_demo2.py ausgegebene Inhalt ist derselbe wie der von mymodule_demo.py ausgegebene Inhalt .

Hier ist zu beachten, dass es zu einem Konflikt kommt, wenn der Name __version__ bereits in dem in mymodule importierten Modul vorhanden ist. Dies liegt wahrscheinlich daran, dass jedes Modul normalerweise seine jeweilige Versionsnummer mit diesem Namen angibt. Daher empfehlen wir generell die Verwendung der import-Anweisung, allerdings verlängert sich dadurch Ihr Programm etwas.

Sie können auch Folgendes verwenden:

from mymodule import *

Dadurch werden alle öffentlichen Namen wie say_hi importiert, jedoch nicht die __version__-Namen, da letztere mit einem doppelten Unterstrich beginnen.

Warnung: Denken Sie daran, dass Sie die Verwendung des Importformulars vermeiden sollten, d. h. „aus meinem Modul importieren “.

Zen of Python

Eines der Leitprinzipien von Python ist „Klarheit ist besser als Unklarheit“2. Sie können mehr erfahren, indem Sie import this in Python ausführen.

dirFunktionen

Die integrierte Funktion dir() kann eine Liste von Namen zurückgeben, die von einem Objekt definiert werden. Wenn es sich bei diesem Objekt um ein Modul handelt, enthält die Liste Funktionen, Klassen und Variablen, die innerhalb der Funktion definiert sind.

Diese Funktion akzeptiert Parameter. Wenn das Argument ein Modulname ist, gibt die Funktion eine Liste mit Namen für das angegebene Modul zurück. Wenn keine Argumente angegeben werden, gibt die Funktion eine Liste mit Namen für das aktuelle Modul zurück.

Beispiel:

$ python
>>> import sys

# 给出 sys 模块中的属性名称
>>> dir(sys)
['__displayhook__', '__doc__',
'argv', 'builtin_module_names',
'version', 'version_info']
# 此处只展示部分条目

# 给出当前模块的属性名称
>>> dir()
['__builtins__', '__doc__',
'__name__', '__package__','sys']

# 创建一个新的变量 'a'
>>> a = 5

>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'a']

# 删除或移除一个名称
>>> del a

>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']

So funktioniert es

Das erste, was wir sehen, ist die Verwendung von dir im importierten sys-Modul. Wir können eine riesige Liste der darin enthaltenen Eigenschaften sehen.

Anschließend verwenden wir die Funktion dir ohne Parameterübergabe. Standardmäßig wird die Eigenschaftenliste des aktuellen Moduls zurückgegeben. Beachten Sie, dass die Liste der importierten Module ebenfalls Teil dieser Liste ist.

Um die Funktionsweise der Funktion dir zu beobachten, definieren wir eine neue Variable a und weisen ihr einen Wert zu. Anschließend überprüfen wir das von dir zurückgegebene Ergebnis. Wir können feststellen, dass es den gleichen Namen A hat Der neue Wert erscheint in der Liste. Wir haben eine Variable oder ein Attribut durch die del-Anweisung entfernt, und diese Änderung spiegelt sich erneut im Inhalt der dir-Funktion wider.

Ein kleiner Tipp zu del – diese Anweisung wird zum Löschen einer Variablen oder eines Namens verwendet. Wenn diese Anweisung ausgeführt wird, in diesem Fall del a, ist dies nicht mehr möglich um auf die Variable a zuzugreifen – es wird so sein, als ob sie nie existiert hätte.

Beachten Sie, dass die Funktion dir() für jedes -Objekt funktioniert. Wenn Sie beispielsweise dir(str) ausführen, können Sie auf die Eigenschaften der Klasse str (String, String) zugreifen.

Gleichzeitig gibt es auch eine vars()-Funktion, die Ihnen auch die Eigenschaften dieser Werte zurückgeben kann, aber möglicherweise nicht für alle Klassen ordnungsgemäß funktioniert.

Verwandte Kursempfehlungen: Python-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSchreiben Sie Ihr eigenes Python-Modul. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen