jiumo

PYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面寻找

打印PYTHONPATH

>>>import os
>>>print sys.path
[\'\', \'/usr/lib64/python27.zip\', \'/usr/lib64/python2.7\', \'/usr/lib64/python2.7/plat-linux2\', \'/usr/lib64/python2.7/lib-tk\', \'/usr/lib64/python2.7/lib-old\', \'/usr/lib64/python2.7/lib-dynload\', \'/usr/lib64/python2.7/site-packages\', \'/usr/lib64/python2.7/site-packages/gtk-2.0\', \'/usr/lib/python2.7/site-packages\']

注意:sys.path 也可以用 os.sys.path 替换,两个应该是同一个命令,推荐使用sys.path, 因为 os.sys.path 在python document 中好像没有提及。

设置PYTHONPATH:

方法一:命令窗口添加路径

 export PYTHONPATH=$PYTHONPATH:/home/test_BugScan/libs

注意:此方法只在当前命令窗口生效,即如果打开一个新的Terminal 窗口,定位到当前目录, 打印PYTHONPATH 是没有刚才加入的路径的。

方法二:在python 中添加

import sys
sys.path.append(\'/home/test_BugScan/libs/\')

实例:

将windows中的代码同步到Linux中,文件等级:

BugScan
-test
​- -test_units.py
... ...

-libs
​- -units.py
... ....

test_units.py

import unittest
from libs.units import  *

class TestFunc(unittest.TestCase):
    pass
# 在执行文件时出现异常
>> ImportError: No module named libs

解决方案:

export PYTHONPATH=$PYTHONPATH:/home/test_BugScan/
# 执行成功
python -m unittest test_utils.TestFunc

分类:

技术点:

相关文章: