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使用pyhook监控键盘并实现切换歌曲的功能
Jul 18 Python
零基础写python爬虫之HTTP异常处理
Nov 05 Python
Python字符编码判断方法分析
Jul 01 Python
Python实现感知器模型、两层神经网络
Dec 19 Python
手把手教你用python抢票回家过年(代码简单)
Jan 21 Python
点球小游戏python脚本
May 22 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
Jun 07 Python
如何用Python实现简单的Markdown转换器
Jul 16 Python
python爬虫之urllib库常用方法用法总结大全
Nov 14 Python
python实现统计代码行数的小工具
Sep 19 Python
python处理excel绘制雷达图
Oct 18 Python
使用Tkinter制作信息提示框
Feb 18 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
php下使用SMTP发邮件的代码
2008/01/10 PHP
PHP 函数语法介绍一
2009/06/14 PHP
PHP实现在线阅读PDF文件的方法
2015/06/17 PHP
php获取远程文件的内容和大小
2015/11/03 PHP
PHP简单获取随机数的常用方法小结
2017/06/07 PHP
html+js实现动态显示本地时间
2013/09/21 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
JavaScript中的类数组对象介绍
2014/12/30 Javascript
推荐一个自己用的封装好的javascript插件
2015/01/29 Javascript
以jQuery中$.Deferred对象为例讲解promise对象是如何处理异步问题
2015/11/13 Javascript
Vuex2.0+Vue2.0构建备忘录应用实践
2016/11/30 Javascript
浅谈Vue内置component组件的应用场景
2018/03/27 Javascript
JS实现DOM删除节点操作示例
2018/04/04 Javascript
node中的session的具体使用
2018/09/14 Javascript
JavaScript键盘事件常见用法实例分析
2019/01/03 Javascript
JavaScript设计模式之装饰者模式实例详解
2019/01/17 Javascript
Vue实现省市区三级联动
2020/12/27 Vue.js
Python函数中定义参数的四种方式
2014/11/30 Python
Python2中的raw_input() 与 input()
2015/06/12 Python
python 实现对文件夹内的文件排序编号
2018/04/12 Python
从DataFrame中提取出Series或DataFrame对象的方法
2018/11/10 Python
python根据文章标题内容自动生成摘要的实例
2019/02/21 Python
Flask框架模板渲染操作简单示例
2019/07/31 Python
AmazeUI 单选框和多选框的实现示例
2020/08/18 HTML / CSS
财务会计人员求职的自我评价
2014/01/13 职场文书
创建无烟单位实施方案
2014/03/29 职场文书
卫校毕业生个人自我鉴定
2014/04/28 职场文书
创先争优公开承诺书
2014/08/30 职场文书
单位工作证明范文
2014/09/14 职场文书
服务员态度差检讨书
2014/10/28 职场文书
2014年数学教师工作总结
2014/12/03 职场文书
优秀学生主要事迹怎么写
2015/11/04 职场文书
CPU不支持Windows11系统怎么办
2021/11/21 数码科技
详解Python中__new__方法的作用
2022/03/31 Python
oracle数据库去除重复数据
2022/05/20 Oracle
服务器间如何实现文件共享
2022/05/20 Servers