我的python是3.5.2版本的。
我有一个helloworld.py模块,它里面有个show函数用来输出"Hello World"。我把这个模块放在pck文件夹下面,然后把pck文件夹放在C盘下。
然后,在python安装路径的site-packages目录下修建了PckPath.pth文件,里面尝试了各种写法:
C:\
C:\pck
C:\pck\helloworld
C:\pck\helloworld.py
把上面的反斜杠换成正斜杠
........
无论是哪一种,在桌面新建test.py文件,然后输入
import pck.helloworld
pck.helloworld.show()
在IDLE都会提示
Traceback (most recent call last):
File "C:\Users\Berlin\Desktop\test.py", line 1, in <module>
import pck.helloworld
ImportError: No module named 'pck
为什么??如果我直接在test.py中设置sys.path.append(...)
则可以正常使用,到底哪里出问题了?.pth文件怎么弄啊?
黄舟2017-06-28 09:27:47
Python默认查找包的地方有以下几个:
Python安装目录下的site-packages
目录
环境变量PYTHONPATH
的目录
当前目录
sys.path.append(...)
添加的目录(这个是临时的)
然而如果你只把包放在了C盘下面,那么它不属于任何一种情况,Python当然就找不到包了。除了sys.path.append()
方法,上面方法中还有将C:
加到sys.path.append(...)
添加的目录(这个是临时的)
然而如果你只把包放在了C盘下面,那么它不属于任何一种情况,Python当然就找不到包了。除了sys.path.append()
方法,上面方法中还有将C:
加到PYTHONPATH
环境变量也是可以的。
PHP中文网2017-06-28 09:27:47
任何语言几乎都是在从系统变量、语言设置变量到最终的即时记载的变量,基本都是这个顺序,对于同一个变量,最近的是生效的。我学这些语言的环境问题什么的都是这么排查的,一查一个准儿