美文网首页python爬虫
用Python Shell设置或获取环境变量的方法:os.env

用Python Shell设置或获取环境变量的方法:os.env

作者: 进击的NickMao | 来源:发表于2018-06-14 13:42 被阅读5次

背景

简单来说是整个工程有一个启动文件,需要用一个const.py文件中的参数来控制运行环境,这在Pycharm这些IDE里面运行当然没问题,因为编译器的运行环境是一个虚拟的env。我在Jenkins的机器上运行时,无法通过单独的case.py文件修改const.py文件的值,使用global变量也不行,故采用设置环境变量的方法。

实施

设置系统环境变量

  • os.environ['环境变量名称']='环境变量值' #其中key和value均为string类型
    
  • os.putenv('环境变量名称', '环境变量值')
    

获取系统环境变量

  • os.environ['环境变量名称']
    
  • os.getenv('环境变量名称')
    

踩坑

以上方法,推荐用os.environ,因为使用os.putenv()并不会真正改变os.environ字典里面的环境变量,即某些平台无效(比如MacOS,我就是在这里一直设置不成功),但是使用os.environ有一个潜在的隐患:在一些平台上,包括FreeBSD和Mac OS X,修改environ会导致内存泄露。详情见Python API。

我们设置的环境变量只存在于当前的python shell中(设置成功后用print os.environ['环境变量名称']或printos.getenv('环境变量名称') 查看)。也就是说,比如Windows环境下,在"我的电脑"——“属性”——“高级系统设置”——"高级"——"环境变量"中找不到刚才设置成功的环境变量。为什么会这样呢,如何用Python真正设置环境变量?

如果你所在的开发环境是windows的操作系统,import _winreg模块将环境变量写入注册表,再广播WM_SETTINGCHANGE消息,可参考实例;如果你所在的开发环境是Linux的操作系统,使用linux命令,在bash_profile文件中添加环境变量后,使其生效即可。

参考文章

os.environ and os.putenv in Python

相关文章

  • 用Python Shell设置或获取环境变量的方法:os.env

    背景 简单来说是整个工程有一个启动文件,需要用一个const.py文件中的参数来控制运行环境,这在Pycharm这...

  • 用命令完成吧 - 添加环境变量

    Unix/Linux 设置环境变量的关键字取决于你的shell类型,下面是常见shell的设置方法: 查看目录 在...

  • 操控数据库

    python 命令:只是进入交互式环境python manage.py shell:进入交互式环境,设置好环境变量...

  • MAC 设置环境变量path的几种方法

    MAC 设置环境变量path的几种方法 mac 一般使用bash作为默认shell Mac系统的环境变量,加载顺序...

  • export

    1.命令简介export 命令为 Shell 内建命令,用于设置或显示环境变量,环境变量包含变量与函数。在 She...

  • jQuery获取设置样式

    css();方法 获取或设置样式 对以下html标签进行样式的获取和设置 获取样式 css();方法设置参数,...

  • php调用python脚本

    python需要添加到环境变量 shell_exec('python e:\abc.py');或者:shell_e...

  • 环境变量的设置

    学习语言的时候总需要设置环境变量,比如php 、python等等。设置环境变量的方法总是大同小异的。这里以wind...

  • Terminal如何添加自定义的Shell脚本

    添加Shell到环境变量 一个目录下都是Shell脚本, 将所以的Shell脚本都添加到环境变量。只有设置好777...

  • postman | 入门脚本语法

    环境变量: 1、设置某个环境变量 2.获取某个环境变量 如果获取的值是json格式 3.将嵌套对象设置为环境变量 ...

网友评论

    本文标题:用Python Shell设置或获取环境变量的方法:os.env

    本文链接:https://www.haomeiwen.com/subject/pncyeftx.html