Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie den Import in Python

So verwenden Sie den Import in Python

coldplay.xixi
coldplay.xixiOriginal
2021-03-05 14:35:2726011Durchsuche

Verwenden Sie die Importmethode in Python: 1. [Modulname importieren], dh der Modulname wird nach dem Import direkt verbunden. 2. [aus Paketname Modulname importieren] ist eine Sammlung von Modulen.

So verwenden Sie den Import in Python

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Python-Version 3.9, DELL G3-Computer.

Verwenden Sie die Importmethode in Python:

Erstellen Sie zunächst einen Ordner Tree als Arbeitsverzeichnis, erstellen Sie darin zwei Dateien m1.py und m2.py und schreiben Sie den Code in m1.py:

import os
import m2
m2.printSelf()

Schreiben Sie Code in m2.py:

def printSelf():
print('In m2')

Öffnen Sie die Befehlszeile, geben Sie das Baumverzeichnis ein, geben Sie python m1.py zum Ausführen ein und stellen Sie fest, dass kein Fehler gemeldet wird. In m2 wird gedruckt, was darauf hinweist, dass bei der Verwendung kein Problem vorliegt auf diese Weise importieren. Daraus fassen wir die erste Verwendung der Importanweisung zusammen.

<code><strong>import module_name</strong>即import后直接接模块名。在这种情况下,Python会在两个地方寻找这个模块,第一是sys.path(通过运行代码import sys; print(sys.path)查看),os这个模块所在的目录就在列表sys.path中,一般安装的Python库的目录都可以在sys.path中找到(前提是要将Python的安装目录添加到电脑的环境变量),所以对于安装好的库,我们直接import即可。第二个地方就是运行文件(这里是m1.py)所在的目录,因为m2.py和运行文件在同一目录下,所以上述写法没有问题。

用上述方法导入原有的sys.path中的库没有问题。但是,最好不要用上述方法导入同目录下的文件!因为这可能会出错。演示这个错误需要用到import语句的第二种写法,所以先来学一学import的第二种写法。在Tree目录下新建一个目录Branch,在Branch中新建文件m3.py,m3.py的内容如下:

def printSelf():
print(&#39;In m3&#39;)

如何在m1中导入m3.py呢,请看更改后的m1.py:

from Branch import m3
m3.printSelf()

总结import语句的第二种用法:

<strong>from package_name import module_name</strong>一般把模块组成的集合称为包(package)。与第一种写法类似,Python会在sys.path和运行文件目录这两个地方寻找包,然后导入包中名为module_nameModulname importieren

.

Das heißt, verbinden Sie den Modulnamen direkt nach dem Import. In diesem Fall sucht Python an zwei Stellen nach diesem Modul. Die erste ist sys.path (überprüfen Sie es, indem Sie den Code import sys; print(sys.path) ausführen. Das Verzeichnis, in dem sich das Betriebssystemmodul befindet, befindet sich in der Liste sys.path: Die Verzeichnisse der allgemein installierten Python-Bibliotheken finden Sie in sys.path (die Voraussetzung besteht darin, das Python-Installationsverzeichnis zu den Umgebungsvariablen des Computers hinzuzufügen), sodass wir sie für die installierten Bibliotheken direkt importieren können. Der zweite Ort ist das Verzeichnis, in dem sich die laufende Datei (hier m1.py) befindet. Da sich m2.py und die laufende Datei im selben Verzeichnis befinden, gibt es bei der oben genannten Schreibmethode kein Problem.

Es ist kein Problem, die Originalbibliothek mit der oben genannten Methode in sys.path zu importieren. Es ist jedoch am besten, die oben beschriebene Methode nicht zum Importieren von Dateien im selben Verzeichnis zu verwenden! Denn das kann schief gehen. Um diesen Fehler zu veranschaulichen, müssen Sie die zweite Schreibweise der Importanweisung verwenden. Lassen Sie uns also zunächst die zweite Schreibweise des Imports lernen. Erstellen Sie ein neues Verzeichnis Branch unter dem Tree-Verzeichnis und erstellen Sie eine neue Datei m3.py in Branch. Der Inhalt von m3.py lautet wie folgt:

def printSelf():
print(&#39;In m4&#39;)

Wie Sie m3.py in m1 importieren, sehen Sie sich bitte die geänderte m1.py an :

import m4
def printSelf():
print(&#39;In m3&#39;)

Um die zweite Verwendung der Importanweisung zusammenzufassen:

<p>from package_name import module_name</p>
.

Im Allgemeinen wird eine Sammlung von Modulen als Paket bezeichnet. Ähnlich wie bei der ersten Schreibweise sucht Python an zwei Stellen nach dem Paket: sys.path und dem Verzeichnis der laufenden Datei und importiert dann das Modul mit dem Namen module_name in das Paket. Lassen Sie uns nun erklären, warum Sie nicht die erste Schreibweise „Import“ verwenden sollten, um Dateien im selben Verzeichnis zu importieren. Erstellen Sie eine neue m4.py-Datei im Branch-Verzeichnis. Der Inhalt von m4.py lautet wie folgt:

from . import m4
def printSelf():
print(&#39;In m3&#39;)
Dann importieren wir m4 direkt in m3.py und m3.py wird zu: 🎜rrreee🎜Zu diesem Zeitpunkt tritt ein Fehler auf Beim Ausführen von m1.py wird gemeldet, dass das m4-Modul nicht importiert werden kann. Warum? Werfen wir einen Blick auf den Importvorgang: m1 verwendet from Branch import m3, um m3 zu importieren, und verwendet dann import m4 in m3.py, um m4 zu importieren. Sehen Sie das Problem? m4.py und m1.py befinden sich nicht im selben Verzeichnis. Wie kann ich import m4 direkt zum Importieren von m4 verwenden? (Leser können versuchen, eine weitere m4.py-Datei direkt im Baumverzeichnis zu erstellen. Sie werden feststellen, dass beim erneuten Ausführen von m1.py kein Fehler auftritt, die zweite m4.py jedoch importiert wird.) 🎜🎜Angesichts des oben genannten Fehlers, nein Beim Ausführen von m1.py mit Python2 wird ein Fehler gemeldet, da in Python2 die beiden oben genannten Arten zum Schreiben von Importen relative Importe sind, während es sich in Python3 um absolute Importe handelt. Allerdings kommt es zum kritischsten Teil des Imports – dem relativen Import und dem absoluten Import. 🎜🎜Wir reden immer noch über die Importverwendung von Python3. Bei den beiden oben genannten Schreibmethoden handelt es sich um absolute Importe, mit denen Pakete in sys.path und Pakete in das Verzeichnis importiert werden, in dem sich die laufende Datei befindet. Für Pakete in sys.path ist diese Schreibweise kein Problem. Wenn Sie eine Datei importieren, die Sie selbst geschrieben haben, können Sie den absoluten Import verwenden, wenn es sich um eine nicht laufende Eintragsdatei handelt (die m1.py oben ist eine laufende Eintragsdatei). ), müssen Sie es relativ importieren. 🎜🎜Zum Beispiel müssen Sie für die nicht laufende Eintragsdatei m3.py den relativen Import verwenden, um m4.py zu importieren: 🎜rrreee🎜Zu diesem Zeitpunkt ist es in Ordnung, m1.py auszuführen. 🎜🎜🎜Verwandte kostenlose Lernempfehlungen: 🎜Python-Video-Tutorial🎜🎜🎜

Das obige ist der detaillierte Inhalt vonSo verwenden Sie den Import in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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