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 相关文章推荐
利用信号如何监控Django模型对象字段值的变化详解
Nov 27 Python
Python语言描述最大连续子序列和
Dec 05 Python
用Python将mysql数据导出成json的方法
Aug 21 Python
Python面向对象之静态属性、类方法与静态方法分析
Aug 24 Python
python函数与方法的区别总结
Jun 23 Python
解决Pycharm 导入其他文件夹源码的2种方法
Feb 12 Python
基于python实现地址和经纬度转换
May 19 Python
Python新手学习标准库模块命名
May 29 Python
keras自定义损失函数并且模型加载的写法介绍
Jun 15 Python
MATLAB 全景图切割及盒图显示的实现步骤
May 14 Python
深入浅析python3 依赖倒置原则(示例代码)
Jul 09 Python
Python学习之os包使用教程详解
Mar 21 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
Thinkphp 中 distinct 的用法解析
2016/12/14 PHP
php5与php7的区别点总结
2019/10/11 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
2019/10/21 PHP
详解no input file specified 三种解决方法
2019/11/29 PHP
javascript firefox不显示本地预览图片问题的解决方法
2008/11/12 Javascript
jquery.ui.draggable中文文档
2009/11/24 Javascript
ajax 同步请求和异步请求的差异分析
2011/07/04 Javascript
利用json获取字符出现次数的代码
2012/03/22 Javascript
Jquery 监视按键,按下回车键触发某方法的实现代码
2014/05/11 Javascript
使用javascript实现监控视频播放并打印日志
2015/01/05 Javascript
javaScript实现可缩放的显示区效果代码
2015/10/26 Javascript
跟我学习javascript的最新标准ES6
2015/11/20 Javascript
基于JavaScript如何制作遮罩层对话框
2016/01/26 Javascript
纯JS实现表单验证实例
2016/12/24 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
AngularJS入门教程一:路由用法初探
2017/05/27 Javascript
ionic2懒加载配置详解
2017/09/01 Javascript
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
2017/09/18 NodeJs
jQuery UI实现动画效果代码分享
2018/08/19 jQuery
ng-events类似ionic中Events的angular全局事件
2018/09/05 Javascript
vuecli3.x中轻松4步带你使用tinymce的步骤
2020/06/25 Javascript
Windows环境下python环境安装使用图文教程
2018/03/13 Python
python使用turtle库绘制树
2018/06/25 Python
浅析python标准库中的glob
2020/03/13 Python
Django 解决由save方法引发的错误
2020/05/21 Python
HTML5 video 上传预览图片视频如何设置、预览视频某秒的海报帧
2018/08/28 HTML / CSS
香港化妆品经销商:我的公主
2016/08/05 全球购物
Fashion Eyewear美国:英国线上设计师眼镜和太阳镜的零售商
2016/08/15 全球购物
网购亚洲时装、美容产品和生活百货:YesStyle
2016/09/15 全球购物
大学生简历的个人自我评价
2013/12/04 职场文书
英文推荐信格式范文
2014/05/09 职场文书
作风转变心得体会
2014/09/02 职场文书
护士年终考核评语
2014/12/31 职场文书
工作能力自我评价2015
2015/03/05 职场文书
爱国电影观后感
2015/06/19 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers