Python sys.path详细介绍


Posted in Python onOctober 17, 2013

如何将路径“永久"添加到sys.path?

sys.path是python的搜索模块的路径集,是一个list

['', 'C:\\WINDOWS\\system32\\python26.zip', 'C:\\Python26\\DLLs', 'C:\\Python26\ \lib', 'C:\\Python26\\lib\\plat-win', 'C:\\Python26\\lib\\lib-tk', 'C:\\Python26 ', 'C:\\Python26\\lib\\site-packages', 'C:\\Python26\\lib\\site-packages\\win32' , 'C:\\Python26\\lib\\site-packages\\win32\\lib', 'C:\\Python26\\lib\\site-packa ges\\Pythonwin']

可以在python 环境下使用sys.path.append(path)添加相关的路径,但在退出python环境后自己添加的路径就会自动消失!

在python脚本中修改

import sys
sys.path.append('c:\\mypythonlib')

为解决这个问题,可以有以下方法:

1. 将自己做的py文件放到 site_packages 目录下:

下面命令显示了 site-packages 目录:

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib() "

但是这样做会导致一个问题,即各类模块都放到此文件夹的话,会导致乱的问题,这一点是显而易见的。

注意,也不创建子文件夹,再将自己的模块放到子文件夹解决问题,这会导致使用import 语句时错误。

2. 使用pth文件,在 site-packages 文件中创建 .pth文件,将模块的路径写进去,一行一个路径,以下是一个示例,pth文件也可以使用注释:

# .pth file for the my project(这行是注释)
E:\DjangoWord
E:\DjangoWord\mysite
E:\DjangoWord\mysite\polls

这个不失为一个好的方法,但存在管理上的问题,而且不能在不同的python版本中共享。

 

3. 使用PYTHONPATH环境变量,在这个环境变量中输入相关的路径,不同的路径之间用逗号(英文的!)分开,如果PYTHONPATH 变量还不存在,可以创建它!

路径会自动加入到sys.path中,而且可以在不同的python版本中共享,应该是一样较为方便的方法。

关于与python相关的环境变量有那些,请参考:

http://docs.python.org/using/cmdline.html

在页面上找到PYTHONPATH

Python 相关文章推荐
Python中使用摄像头实现简单的延时摄影技术
Mar 27 Python
python与php实现分割文件代码
Mar 06 Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
May 26 Python
Python 中的range(),以及列表切片方法
Jul 02 Python
python tornado微信开发入门代码
Aug 24 Python
python 字符串只保留汉字的方法
Nov 16 Python
Python类的继承用法示例
Jan 31 Python
PYTHON EVAL的用法及注意事项解析
Sep 06 Python
python如何编写win程序
Jun 08 Python
Python数据结构之队列详解
Mar 21 Python
Python OpenCV超详细讲解基本功能
Apr 02 Python
Python如何加载模型并查看网络
Jul 15 Python
python开发的小球完全弹性碰撞游戏代码
Oct 15 #Python
python中 ? : 三元表达式的使用介绍
Oct 09 #Python
Python 文件和输入输出小结
Oct 09 #Python
Python 错误和异常小结
Oct 09 #Python
Python 命令行非阻塞输入的小例子
Sep 27 #Python
用Python脚本生成Android SALT扰码的方法
Sep 18 #Python
python pickle 和 shelve模块的用法
Sep 16 #Python
You might like
用libTemplate实现静态网页的生成
2006/10/09 PHP
php实现数组按指定KEY排序的方法
2015/03/30 PHP
PHP6连接SQLServer2005的三部曲
2016/04/15 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
2019/10/11 PHP
ext checkboxgroup 回填数据解决
2009/08/21 Javascript
jQuery总体架构的理解分析
2011/03/07 Javascript
JavaScript的parseInt 取整使用
2011/05/09 Javascript
ajax的hide隐藏问题解决方法
2012/12/11 Javascript
javascript垃圾收集机制与内存泄漏详细解析
2013/11/11 Javascript
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
node.js中的fs.lchownSync方法使用说明
2014/12/16 Javascript
JavaScript将数组转换成CSV格式的方法
2015/03/19 Javascript
JS中的THIS和WINDOW.EVENT.SRCELEMENT详解
2015/05/25 Javascript
Vue.js 中的 $watch使用方法
2017/05/25 Javascript
使用Angular CLI从蓝本生成代码详解
2018/03/24 Javascript
JavaScript实现鼠标经过表格某行时此行变色
2020/11/20 Javascript
Python的垃圾回收机制深入分析
2014/07/16 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
python tkinter组件摆放方式详解
2019/09/16 Python
互斥锁解决 Python 中多线程共享全局变量的问题(推荐)
2020/09/28 Python
css3 实现元素弧线运动的示例代码
2020/04/24 HTML / CSS
移动端解决悬浮层(悬浮header、footer)会遮挡住内容的3种方法
2015/03/27 HTML / CSS
Lookfantastic日本官网:英国知名护肤、化妆品和头发护理购物网站
2018/04/21 全球购物
创业计划书六个要素
2013/12/26 职场文书
2014年小学植树节活动方案
2014/03/02 职场文书
设计顾问服务计划书
2014/05/04 职场文书
珍惜资源保护环境的建议书
2014/05/14 职场文书
电子专业自荐信
2014/07/01 职场文书
老龄工作先进事迹
2014/08/15 职场文书
质量保证书
2015/01/17 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
2016年寒假家长评语
2015/10/10 职场文书
2016猴年春节问候语
2015/11/11 职场文书
vue中三级导航的菜单权限控制
2021/03/31 Vue.js
单机多实例部署 MySQL8.0.20
2022/05/15 MySQL
python实现商品进销存管理系统
2022/05/30 Python