大家在编写模块的时候,总会遇到这么一个问题:把模块放到安装目录下的Lib目录里面就可以正常使用了,可是过了几天重装了Python,自己写的模块也没了,然后就是感觉身体被掏空,心情极度难受,精神非常崩溃,毕竟自己辛辛苦苦写的库没了。

要想防止这种情况发生,唯有备份!但是我们来设想一个情况,你的Python装了好多个库,自己又写了好多库,因为磁盘空间有限,自己写的库只能放在另一个盘里面了。遇到这种情况有些人会想到使用虚拟环境,虚拟环境的切换可是相当繁琐的,而且虚拟环境无法和真实环境绑定在一起!

既不用虚拟环境,也不能把模块放在相应的目录下,解释器就会找不到啊!怎么办?确实找不到,至于为什么?我首先要介绍一下sys模块的path变量,如图所示。

这个变量是一个list,里面的每一个元素都是字符串,其实观察字符串的内容,大家能够发现字符串就是路径,第一个空字符串表示当前路径,sys.path就是告诉python解释器去它里面所用的路径下寻找模块。现在假设现有的这些路径因为某种原因不能往里面塞东西了,需要另外一个路径,该怎么办?有些人会把模块放在当前项目所在的路径,这么做只能对当前项目起作用,如果另一个项目也需要用这个项目里面的模块,就需要把模块复制过去,这样就会有大量的模块重复;有些人会想得很简单,既然是一个列表,append新路径绝对没问题!确实没问题,但这样只能临时修改sys.path!(重新启动就会失效)我想要永久性的的告诉解释器我自己定义的路径该怎么做呢?!这就需要使用环境变量PYTHONPATH。windows添加环境变量非常容易,在此我就不做演示了。环境变量添加完成后如图所示。

变量的值不一定要和我一样,但变量名一定要和我一样!我这里变量的值是D:\Python\Lib,就是告诉解释器要去D盘下的Python目录下的Lib目录中查找。注意:如果创建或修改环境变量PYTHONPATH之后,sys.path也会发生变化,永久性变化!目前的sys.path的结果如图所示。

大家可以看到D:\Python\Lib已经在其中了。既然环境变量设置了,大家第一个反应就是到底设置的环境变量有没有起作用。这种问题编写一个简单的模块测试一下就知道了,编写模块如图所示。

为了方便测试,模块里面就只有一个简单的函数。在测试之前,首先要去检查一下,看看有没有模块重名。我保证,我这里绝对没有。实际上检查就是去sys.path所列的每个路径进行检查就行,要确保遍历之后只有一个名为hello的模块。

然后就是测试,测试过程非常简单,如图所示。

分析测试结果发现没有问题。最后再扯一点关于设置PYTHONPATH环境变量的其他原因,其实我刚开始说的磁盘空间不足的情况比较少见,但是这并不意味着使用PYTHONPATH环境变量很少见,我们来看下面一种情况。假设Python是系统管理员安装的,而你是一个普通用户,你也不知道管理员账号密码,你只能用python,不能修改python的安装目录下的内容,这个时候PYTHONPATH环境变量就发挥作用了!我们可以发现,使用PYTHONPATH环境变量可以更好地管理我们自己编写的模块,做到不丢失,不重复,存放路径自由!

pythonpath_环境变量:PYTHONPATH相关推荐

  1. Python环境变量PYTHONPATH设置、导入第三方模块

    1.暂时设置模块的搜索路径--修改sys.path 我们在导入模块的时候,python会在指定的路径下搜索相对应的.py文件,搜索路径存放在sys模块的sys.path变量中,如下图 这个path变量 ...

  2. Python环境变量PYTHONPATH设置和easy_install简单使用

    1.把自己编写的python模块添加到PYTHONPATH上 要想让python解释器找到自己编写的模块,则该模块必须PYTHONPATH上,否则在导入该模块时会出现找不到该模块的错误,因此必须把所需 ...

  3. pythonpath_设置Python的PYTHONPATH环境变量

    刚开始学习Python的时候,自己写的模块所在路径要在每一次启动Python时,进行手动添加路劲(使用import加载Python模块时的路径).现在学会了另外一个方法,通过设置PYTHONPATH环 ...

  4. Python环境变量与引包错误

    http://c.biancheng.net/view/4645.html https://blog.csdn.net/weixin_44153121/article/details/10656870 ...

  5. python的path是什么意思_pythonpath_windows pythonpath_pythonpath环境变量 - 云+社区 - 腾讯云...

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我这里变量的值是d:pythonlib,就是告诉解释器要去d盘下的python目 ...

  6. linux配置python环境变量_linux添加PYTHONPATH环境变量

    1.添加环境变量到pythonpath export PYTHONPATH=$PYTHONPATH:/home/myproject 查看pythonpath echo $PYTHONPATH 可以进入 ...

  7. linux查看python环境变量_Linux中添加PYTHONPATH配置anaconda环境变量方法

    因为最近开发多智能体模型需要把自己写的环境打包import,环境是统一的,如果不加入环境变量,每次测一个算法都要把包作为附属脚本和算法脚本放一起非常麻烦.所以就想把这些写的环境加入到python的环境 ...

  8. python修改PYTHONPATH环境变量

    查看当前python环境 我们进入到conda中的mmlab环境中,运行下面命令 (mmlab) wangyh@Ti-Sev:~$ python -m site sys.path = ['/home/ ...

  9. 如何检查您的PYTHONPATH环境变量

    您可以通过以下方式检查您的 PYTHONPATH 环境变量: 使用命令行/终端: 打开命令行/终端并输入以下命令: import sysprint(sys.path) 这将打印出当前的 PYTHONP ...

最新文章

  1. TexturePacker
  2. ajax结合接口 分页插件
  3. matlab历史指示穿作用,重新学习MATLAB——相见恨晚的重要应用技巧
  4. Oracle RAC环境下如何定位并杀掉最终阻塞的会话
  5. bzoj 3173: [Tjoi2013]最长上升子序列(离线二分+树状数组)
  6. java netty rpc框架_Java编写基于netty的RPC框架
  7. 计算机网络原理基础知识点总结
  8. android连接打印机打印pdf文件,如何在Android设备上打印PDF文件
  9. windows10操作系统开启以及关闭测试模式
  10. 妙控键盘大写按哪个键_苹果键盘怎么输入大写字母
  11. 社会网络分析能干什么?
  12. linux时间为什么没有北京,Linux时区选择为何没有北京?
  13. Python实现psf2otf
  14. 制表软件带动办公软件市场新火爆
  15. 虚拟串口工具MCGS开发调试的灵活应用教程
  16. 如何提高员工士气和工作满意度(上)
  17. Excel快速填充空白单元格内容为上一行的内容
  18. win10商店打不开解决办法
  19. 砂轮是刀具磨床加工表面粗糙度高的主要因素
  20. splitstring函数在C语言中的,C语言 字符串Split功能实现

热门文章

  1. cocos2d-x飞机大战——飞机移动的动画效果
  2. 领域建模之数据模型设计方法论
  3. html5绘制直线和曲线,SVG基础 | 绘制SVG直线、折线和多边形
  4. 淘晶驰串口屏_页面事件详解
  5. 14-Javaweb-jdbc案例(简单的curd 分页)
  6. Udacity数据分析(入门)-分析 A/B 测试结果
  7. xxlJob的简单使用
  8. 树状数组(单点修改,区间修改等)
  9. 我的世界服务器无限铁傀儡,我的世界如何快速刷铁傀儡 铁傀儡速刷攻略
  10. 【深度学习】李宏毅2021/2022春深度学习课程笔记 - Auto Encoder 自编码器 + PyTorch实战