python中如何获取和设置环境变量?

裘德小鎮的故事
发布: 2025-09-15 20:34:01
原创
671人浏览过
使用os.environ.get('变量名', '默认值')可安全获取环境变量,避免程序崩溃;通过os.environ['变量名'] = '值'可临时设置仅限当前进程的环境变量。

python中如何获取和设置环境变量?

获取和设置环境变量,Python提供了简单直接的方法。本质上,你是在与操作系统打交道,而Python的

os
登录后复制
模块就是你的桥梁。

解决方案:

Python中,获取环境变量使用

os.environ.get('环境变量名')
登录后复制
或者
os.environ['环境变量名']
登录后复制
。前者更安全,如果环境变量不存在,会返回
None
登录后复制
,而后者会抛出
KeyError
登录后复制
。设置环境变量使用
os.environ['环境变量名'] = '新的值'
登录后复制
,但这只会影响当前Python进程及其子进程。要永久修改环境变量,你需要修改操作系统级别的配置。

如何安全地获取环境变量,避免程序崩溃?

立即学习Python免费学习笔记(深入)”;

使用

os.environ.get('环境变量名', '默认值')
登录后复制
。这个方法允许你指定一个默认值,当环境变量不存在时,程序不会崩溃,而是使用你提供的默认值。例如,如果你的程序依赖一个名为
API_KEY
登录后复制
的环境变量,但用户没有设置,你可以这样处理:

import os

api_key = os.environ.get('API_KEY', 'YOUR_DEFAULT_API_KEY')
if api_key == 'YOUR_DEFAULT_API_KEY':
    print("警告:API_KEY未设置,使用默认值。")
# 使用api_key
登录后复制

这样做的好处是,即使环境变量缺失,你的程序也能继续运行,并给出友好的提示。当然,更好的做法是记录日志,方便排查问题。

如何在不同操作系统下永久设置环境变量?

如此AI员工
如此AI员工

国内首个全链路营销获客AI Agent

如此AI员工 71
查看详情 如此AI员工

这个就比较麻烦了,因为不同操作系统设置环境变量的方法不一样。

  • Windows: 你需要通过“系统属性” -> “高级” -> “环境变量”来设置。这会修改注册表,影响所有用户或当前用户。也可以使用

    setx
    登录后复制
    命令,但需要管理员权限。

  • macOS/Linux: 通常修改

    .bash_profile
    登录后复制
    ,
    .zshrc
    登录后复制
    , 或者
    /etc/environment
    登录后复制
    。修改哪个文件取决于你使用的shell和系统配置。例如,在
    .zshrc
    登录后复制
    中添加
    export MY_VARIABLE="my_value"
    登录后复制
    ,然后执行
    source .zshrc
    登录后复制
    使之生效。

注意,修改系统级别的环境变量需要谨慎,错误的配置可能导致系统不稳定。

如何在Python脚本中临时修改环境变量,但不影响其他程序?

使用

os.environ
登录后复制
直接修改。就像前面提到的,这只会影响当前进程及其子进程。

import os

os.environ['MY_TEMP_VARIABLE'] = 'temp_value'
print(os.environ['MY_TEMP_VARIABLE']) # 输出: temp_value

# 在子进程中也能访问到
import subprocess
subprocess.run(['python', '-c', 'import os; print(os.environ.get("MY_TEMP_VARIABLE"))']) # 输出: temp_value

del os.environ['MY_TEMP_VARIABLE'] # 删除变量
登录后复制

这种方法非常适合在测试或者临时脚本中使用,但记住,一旦脚本结束,这些修改就会失效。

以上就是python中如何获取和设置环境变量?的详细内容,更多请关注php中文网其它相关文章!

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号