Mein Python ist Version 3.5.2.
Ich habe ein helloworld.py-Modul, das eine Show-Funktion zur Ausgabe von „Hello World“ hat. Ich habe dieses Modul im PCK-Ordner und dann den PCK-Ordner im Laufwerk C abgelegt.
Dann habe ich die Datei PckPath.pth im Site-Packages-Verzeichnis des Python-Installationspfads erstellt und verschiedene Schreibmethoden darin ausprobiert:
C:
C:pck
C:pckhelloworld
C:pckhelloworld.py
Ersetzen Sie den Backslash oben durch einen Schrägstrich
.....
Egal um welches es sich handelt, erstellen Sie eine neue test.py-Datei auf dem Desktop und geben Sie
einimport pck.helloworld
pck.helloworld.show()
Es erscheint eine Aufforderung im Leerlauf
Traceback (most recent call last):
File "C:\Users\Berlin\Desktop\test.py", line 1, in <module>
import pck.helloworld
ImportError: No module named 'pck
Warum? ? Wenn ich sys.path.append(...)
direkt in test.py einstelle, kann es normal verwendet werden. Was ist das Problem? Wie erhalte ich die .pth-Datei?
Python默认查找包的地方有以下几个:
Python安装目录下的
site-packages
目录环境变量
PYTHONPATH
的目录当前目录
sys.path.append(...)
添加的目录(这个是临时的)然而如果你只把包放在了C盘下面,那么它不属于任何一种情况,Python当然就找不到包了。除了
sys.path.append()
方法,上面方法中还有将C:\
加到PYTHONPATH
环境变量也是可以的。任何语言几乎都是在从系统变量、语言设置变量到最终的即时记载的变量,基本都是这个顺序,对于同一个变量,最近的是生效的。我学这些语言的环境问题什么的都是这么排查的,一查一个准儿