Python verfügt über drei Modulimportfunktionen
1. Verwenden Sie Import, um Module zu importieren. Modname importieren: Ein Modul bezieht sich auf ein Codesegment, das interaktiv verwendet oder von einem anderen Python-Programm aus aufgerufen werden kann. Sobald ein Modul importiert ist, kann auf alle seine öffentlichen Funktionen, Klassen oder Eigenschaften verwiesen werden. Module können auf diese Weise die Funktionalität anderer Module nutzen. Beim Importieren eines Moduls mit der Importanweisung wird ein Verweis auf das Modul im aktuellen Namespace erstellt. Dieser Verweis muss den vollständigen Namen verwenden, d. h. bei Verwendung einer im importierten Modul definierten Funktion muss der Modulname enthalten sein. Sie können also nicht nur funcname, sondern modname.funcname verwenden.
Hinweis: Sie können die folgenden Kommentare hinzufügen, damit Python chinesische Kommentare unterstützt
#coding:gbk或#coding:utf-8或##-*- coding : gbk -*-
Modul des Systems importieren
Zum Beispiel mein Home-Verzeichnis Erstellen Sie eine m.py-Datei und wir importieren viele Systemmodule wie Zeit, Zeichenfolge usw. Dies ähnelt dem Einfügen in c
#!/bin/env python import time import stringimport reimport socketimport threading time.sleep(10)print "java"
Privates Modul importieren
m.py-Datei
#!/bin/env python #coding:gbk #coding:utf-8 #上面的加载是支持中文注释 def plus(a ,b): #"""XXX""" 是函数的说明或使用 """this is a test +""" a = a+b return a+b
Import zum Laden des m.py-Moduls verwenden
#!/bin/env python #coding:gbk #coding:utf-8 „Verwenden Sie das sys-Modul, um den Pfad der angegebenen Python-Datei zu importieren“ import sys sys.path.append("./") „Eine andere Möglichkeit zum Importieren Python-Dateien“
aus m import plus
print plus(12,3)
print help(plus)
aus modname import funcname aus modname import fa, fb, fc oder aus modname import * Der Unterschied zum Erste Methode: funcname wird direkt in den lokalen Namensraum importiert, sodass es direkt verwendet werden kann, ohne dass der Modulname qualifiziert werden muss. * Bedeutet, dass alle öffentlichen Objekte des Moduls in den aktuellen Namensraum importiert werden nicht mit „_“ beginnt, wird importiert. modname ist nicht definiert, daher funktioniert modname.funcname nicht. Und wenn funcname bereits definiert ist, wird er durch die neue Version (die Version im importierten Modul) ersetzt. Wenn funcname so geändert wird, dass es auf ein anderes Objekt zeigt, muss modname dies bemerken. Vorschläge:
1) Wenn Sie häufig auf die Eigenschaften und Methoden des Moduls zugreifen und den Modulnamen nicht immer wieder eingeben möchten, verwenden Sie „aus Modulimport“. 2) Wenn Sie bestimmte Eigenschaften selektiv importieren möchten und Methoden, aber keine anderen, verwenden Sie from module import 3) Wenn das Modul Attribute und Methoden mit demselben Namen wie eines Ihrer Module enthält, müssen Sie import module verwenden, um Namenskonflikte zu vermeiden. 4) Verwenden Sie from module import * so wenig wie möglich , weil es etwas schwierig bestimmt, woher eine bestimmte Funktion oder Eigenschaft stammt, und das Debuggen und Refactoring erschwert.
#!/bin/env python #!/bin/env python #coding:gbk #coding:utf-8 "利用sys模块导入指定Python文件的路径" import sys sys.path.append("./") "另外一种导入Python文件" from m import plus print plus(12,3) print help(plus)
3. Verwenden Sie die introvertierte Funktion import Zusätzlich zu den beiden vorherigen Methoden zur Verwendung des Schlüsselworts import können wir auch die integrierte Funktion import() zum Importieren von Modulen verwenden. Der Unterschied zwischen den beiden besteht darin, dass auf import ein Typ folgen muss, während der Parameter von import() ein String ist. Dieser String kann aus der Konfigurationsdatei stammen oder das Ergebnis einer Ausdrucksberechnung sein. Beispiel: mymodule = import ('module_name') Hinweise: 1) Der Inhalt des Moduls wird in einer Moduldatei abgelegt. Beispielsweise sollte der Inhalt von mymodule in einer mymodule.py im PYTHONPATH-Verzeichnis abgelegt werden, mit Ausnahme dieser in C implementiert. 2) Das Paket kann in mehreren Modul-Namespaces organisiert sein, zum Beispiel stellt A.b ein Submodul b in Paket A dar
#!/bin/env python #coding:gbk #coding:utf-8 "利用sys模块导入指定Python文件的路径" import sys sys.path.append("./") "另外一种导入Python文件" my = __import__("m") print my.plus(12,3) print help(my.plus)
Referenz:
1, http:// www.cnblogs.com /allenblogs/archive/2011/11/15/2055149.html
2. http://blog.csdn.net/chenguolinblog/article/details/11521611