191145686 发表于 2015-4-25 10:31:25

python中寻找module的顺序

  python在import module的时候 是按照以下顺序去import一个module的:
  
  1. 首先判断这个module是不是built-in即内建模块,
  如果是则引入内建模块,如果不是则在一个称为sys.path的list中寻找
  
  2. sys.path在python脚本执行时动态生成,包括以下3个部分:
  a.脚本执行的位置,即当前路径
  b.环境变量中的PYTHONPATH, 即.bash_profile
  c.安装python时的依赖位置
  



['/home/work/wuxl/ownScript/pythonExe', '/home/work/tmp', '/home/work/local/python2.7/lib/python27.zip', '/home/work/local/python2.7/lib/python2.7', '/home/work/local/python2.7/lib/python2.7/plat-linux2', '/home/work/local/python2.7/lib/python2.7/lib-tk', '/home/work/local/python2.7/lib/python2.7/lib-old', '/home/work/local/python2.7/lib/python2.7/lib-dynload', '/home/work/local/python2.7/lib/python2.7/site-packages']
  
  以上事例是运行时的sys.path值
  其中第一个 pythonExe是本地路径
  /home/work/tmp为我自己定义在环境变量中PYTHONPATH
  所以从上面例子可以看出,python寻找module是按照以上顺序寻找的。
页: [1]
查看完整版本: python中寻找module的顺序