Python中os.environ环境变量交互机制的使用
作者:青衫客36
os.environ是Python中读取和操作环境变量的字典,继承自系统环境变量,本文主要介绍了os.environ环境变量交互机制的使用,感兴趣的可以了解一下
什么是os.environ?
os.environ
是 Python 提供的一个 “环境变量字典”,它包含了当前操作系统环境变量的全部信息。
- 由 Python 的
os
模块 提供。 - 本质上是一个特殊的 字典(os._Environ 对象),键是环境变量名称,值是对应的字符串。
1.我们可以把 os.environ 理解为:
“当前 Python 进程启动时,继承自操作系统环境变量的映射表”。
当我们在 Python 中访问:
import os print(os.environ['PATH'])
获取到的就是 系统环境变量 PATH 的值。
2.常见用法示例
访问环境变量:
import os print(os.environ['PATH']) # 访问 PATH 环境变量 print(os.environ.get('PYTHONPATH')) # 安全访问,若没有返回 None
设置/修改环境变量(仅当前进程有效):
os.environ['MY_VAR'] = 'HelloWorld' print(os.environ['MY_VAR']) # HelloWorld
删除某个环境变量(仅当前进程有效):
del os.environ['MY_VAR']
遍历所有环境变量:
for key, value in os.environ.items(): print(f"{key} = {value}")
3.os.environ 的特性
特性 | 说明 |
---|---|
表现为字典类型 (os._Environ) | 类似普通dict,但是受操作系统影响的特殊对象 |
只影响当前Python进程 | 我们通过 os.environ 修改的环境变量,不会影响系统/终端/其他程序 |
启动时从系统环境变量中继承 | Python 启动时,会读取操作系统环境变量,填充 os.environ |
不会写入到系统永久环境变量 | 想要永久生效需要到操作系统环境变量中配置(如Windows环境变量配置界面) |
4.os.environ 修改只对当前进程有效
例如:
import os os.environ['MY_VAR'] = 'Python' print(os.environ['MY_VAR']) # Python # 关闭Python后再运行 CMD: echo %MY_VAR% -> 没有这个变量
- 我们用 os.environ 设置的变量只存在于当前Python进程的内存空间。
- 不会反向修改操作系统全局的环境变量。
5.PYTHONPATH 与 os.environ 的关系
当我们设置了 系统环境变量 PYTHONPATH,Python 启动时会自动将其加入
os.environ['PYTHONPATH']
。我们也可以在Python代码里动态设置 PYTHONPATH:
os.environ['PYTHONPATH'] = '/my/custom/path'
但这只影响当前Python进程的 sys.path 初始化,并不会改变系统环境变量。
6.总结一句话
os.environ 就是Python程序用来“读取与操作环境变量”的窗口。它是Python对操作系统环境变量的一个实时映射(当前进程范围内)。
到此这篇关于Python中os.environ环境变量交互机制的使用的文章就介绍到这了,更多相关Python os.environ内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!