当前位置:   article > 正文

设置Python的PYTHONPATH环境变量_if defined _old_virtual_pythonpath (set "pythonpat

if defined _old_virtual_pythonpath (set "pythonpath=" )

https://www.maixj.net/ict/python-path-14150

刚开始学习Python的时候,自己写的模块所在路径要在每一次启动Python时,进行手动添加路劲(使用import加载Python模块时的路径)。现在学会了另外一个方法,通过设置PYTHONPATH环境变量,可以自动将你需要的路劲加载到Python的sys.path变量里面。这样做,节省了不少敲键盘的工作。

具体的做法很简单,设置一个名叫PYTHONPATH的环境变量,将你想添加的路径作为这个环境变量的值,然后重启启动cmd窗口,运行python即可。

 

设置PYTHONPATH的过程需要注意几点:

1, 不要用set命令设置环境变化(我不知道为什么使用set命令设置之后,重启会消失?请参考:Win7下使用set命令查看环境变量),直接使用计算机->属性->高级设置->环境变量,这样设置之后,电脑重启也不会丢失;

2, 如果有多个路径,请使用分号进行分割(;);

3, 设置之后,重启cmd窗口,否则不能生效。

 

Python的原理是,将PYTHONPATH里面保存的路劲,在Python启动的时候,全部自动加载到sys.path变量中。这样,就不用每次手动改变sys.path的值了。

 

2018-09-28:

在一个模块被导入时,PVM(Python Virtual Machine)会在后台从一系列路径中搜索该模块,其搜索过程如下:

1、在当前目录下搜索该模块;

2、在环境变量PYTHONPATH中指定的路径列表中依次搜索;

3、在python安装路径中搜索

事实上,PVM通过变量sys.path中包含的路径来搜索,这个变量里面包含的路径列表就是上面提到的这些路径信息。

 

2018-10-14:

刚开始学习unittest模块的使用,遇到import失败,通过设置PYTHONPATH轻松解决(Windows平台):

(LinkCheck) D:\pyve\LinkCheck>SET PYTHONPATH=D:\pyve\LinkCheck\src

(LinkCheck) D:\pyve\LinkCheck>SET PYTHONPATH
PYTHONPATH=D:\pyve\LinkCheck\src

(LinkCheck) D:\pyve\LinkCheck>
(LinkCheck) D:\pyve\LinkCheck>python -m unittest src/test.py
.
----------------------------------------------------------------------
Ran 1 test in 0.000s

OK

(LinkCheck) D:\pyve\LinkCheck>python -m unittest -v src/test.py
test_IsValidDomain (src.test.Test_website) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.001s

OK

(LinkCheck) D:\pyve\LinkCheck>

使用python -m的时候,unittest模块所在路径与当前需要测试的文件路径不一致,而当前的这个路径是随项目变化的,通过设置PYTHONPATH,unittest模块在运行的时候,当前路径下的模块之间的import,也能够找到路径。

注意:

(1)unittest不用加.py,而src/test.py一定要加.py;

(2)cmd窗口关闭之后,PYTHONPATH就失效了,要重新添加;

(3)set pythonpath,大小写无关,但后面的路径大小写有关。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/70388
推荐阅读
相关标签
  

闽ICP备14008679号