Python 处理环境变量

在 Python 可以使用 os 模块的 os.environ 处理环境变量。
使用 os.environ 将获取到 Python 脚本启动时的环境变量,它是个 mapping 对象,可以像字典一样操作。

按照环境变量名取得它的值,建议使用 get 方法。

>>> import os
>>> os.environ["SHELL"]
'/bin/bash'
>>> os.environ.get("LANG")
'en_US.UTF-8'
# 没有该环境变量时返回 None
>>> os.environ.get("MONEY")
>>> 

虽然有 os.putenv 函数添加新的环境变量,但是推荐直接使用 os.environ 添加新的环境变量。
下面的代码可以看出 2 种方法的区别,使用 os.putenv 可以添加环境变量,但是添加后不更新 os.environ 对象,因此无法直接访问;使用 os.environ 添加新环境变量不会有这个问题。
添加的环境变量会作用于当前 Python 进程和子进程,但是 Python 主进程退出后不会影响到 shell 环境,也就是说你完全可以添加新环境变量而不删除。

>>> os.putenv("MONEY", "100000000")
>>> os.environ.get("MONEY")
# 添加后不更新 os.environ
>>> os.getenv("MONEY")
>>> os.environ["MONEY"] = "100000000"
# 添加后更新 os.environ
>>> os.environ.get("MONEY")
'100000000'
>>> os.getenv("MONEY")
'100000000'

删除环境变量也像删除字典的元素一样,推荐使用 pop 方法。

>>> del os.environ["MONEY"]
>>> os.environ.pop("MONEY", "default")
'default'
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容