Python(os.environ.get())

news/2025/3/20 15:03:01/文章来源:https://www.cnblogs.com/keye/p/18783046

目录
  • 1. 函数定义
  • 2. 代码示例
    • 2.1 读取已存在的环境变量
    • 2.2 读取不存在的环境变量,使用默认值
    • 2.3 设置并读取环境变量
  • 3. 应用场景
  • 4. 与 os.environ[] 的区别
  • 5. 总结

os.environ.get() 是 Python os 模块中的一个方法,用于获取环境变量的值。

1. 函数定义

import osvalue = os.environ.get(key, default=None)

参数

  • key(必填):要获取的环境变量的名称(字符串)。
  • default(可选):如果环境变量 key 不存在,则返回 default,默认为 None

返回值

  • 如果环境变量 key 存在,则返回其值(字符串)。
  • 如果 key 不存在,则返回 default 参数指定的值(默认为 None)。

2. 代码示例

2.1 读取已存在的环境变量

import os# 获取 PATH 变量
path_value = os.environ.get("PATH")
print(path_value)

2.2 读取不存在的环境变量,使用默认值

import os# 获取不存在的环境变量,返回默认值 "Not Found"
value = os.environ.get("MY_ENV_VAR", "Not Found")
print(value)  # 输出: Not Found

2.3 设置并读取环境变量

import os# 设置环境变量
os.environ["MY_ENV_VAR"] = "Hello, World!"# 读取环境变量
value = os.environ.get("MY_ENV_VAR")
print(value)  # 输出: Hello, World!

3. 应用场景

  • 配置管理:在不同环境(开发、测试、生产)中读取不同的环境变量。
  • 安全性:存储敏感信息(如 API 密钥)而不直接写入代码。
  • 跨平台兼容性:在不同操作系统上获取系统级配置信息(如 PATHHOMETEMP 等)。

4. 与 os.environ[] 的区别

  • os.environ["key"] 如果 key 不存在,会抛出 KeyError
  • os.environ.get("key") 如果 key 不存在,会返回 None 或指定的默认值。

示例:

import osprint(os.environ["NOT_EXIST"])  # KeyError: 'NOT_EXIST'print(os.environ.get("NOT_EXIST", "Default Value"))  # 输出: Default Value

5. 总结

  • os.environ.get() 是安全的,适用于读取环境变量时避免 KeyError
  • 适用于存储和管理程序的配置信息,如数据库连接、API 密钥等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/902029.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Glyphs制作tff字体子集

官网 https://glyphsapp.com/zh 导出字体的子集 开发过程中整个字体文件太大,需要制作部分字体的子集合。 双击tff文件打开字体文件选择要保留的字符 •进入字体编辑窗口后,你会看到所有字符的网格。 •按住 Cmd 键并点击你想要保留的字符。 例如:大小写字母、数字、特殊符号…

开启MySQL8的密码策略组件validate_password.250320

一、validate_password组件安装配置安装组件INSTALL COMPONENT file://component_validate_password;安装后,密码策略立即生效,但仅影响后续操作(如新建用户或修改密码)。卸载组件UNINSTALL COMPONENT file://component_validate_password;卸载后,密码复杂度策略失效,可设…

茶聚场日事清实战案例:OKR目标管理+流程优化+看板会议系统深度应用

茶聚场通过引入日事清管理系统,有效解决了OKR不透明、跨区域协作低效及供应链管理分散等挑战,实现了目标对齐、流程优化与运营效率提升,支撑其在新茶饮市场的战略扩张。公司介绍 在2016年,一个新的品牌诞生在北京的商业心脏地带——茶聚场。作为茶聚场(北京)餐饮管理有限…

20250320日

01.军工 02.纳指etf 03.煤炭:04.红利etf 05.养殖ETF:06.白酒:

勤策、玄瞳、纷享销客对比,消费品领域CRM厂商怎么选?

近年来,随着消费品行业竞争加剧,CRM(客户关系管理)系统已成为企业提升运营效率、增强客户满意度的关键工具。其中,纷享销客、勤策、玄瞳等作为该领域的佼佼者,各自拥有独特的产品特点和适用企业类型。本文将此前三家主流快消领域CRM厂商进行全面对比,帮您理清各家厂商“…

Deepseek本地部署的webui可视化

1.WebUI可视化插件 —— Page Assist 在chrome应用商店中搜索Page Assist,找到后添加到chrome 浏览器添加完成后类似这样 点击这个扩展插件,即可看到 就可以进行对话聊天了

母婴电商企业案例:日事清驱动项目管理执行与OKR目标管理的流程自动化实践

日事清以电商基因与高性价比集成方案,助力科木电商解决协作低效、流程散乱等管理痛点,实现母婴品牌“小鹿豆豆”的团队提效与目标追踪。一、关于科木电商“小鹿豆豆”,一个年轻的品牌,近期在无论是淘宝、拼多多还是抖音电商平台,都成了亮眼的爆品。这个由绵阳科木电子商务…

20241905 2024-2025-2 《网络攻防实践》 第4次作业

1. 实验内容 在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。 ARP缓存欺骗攻击:ARP协议在进行IP到MAC地址映射查询时存在安全缺陷,ARP协议为提高效率,设置了缓存机制,会将主…

ClkLog埋点系统客户案例-电子签佼佼者「大家签」为何选择ClkLog?

ClkLog的付费版上线已有一年多。作为一款从开源起步的产品,我们始终关注用户的使用体验。因此,近期我们发起了一轮客户回访,希望了解他们的使用情况及优化建议,并分享一些典型案例,让更多人看到ClkLog在真实业务场景中的价值。本次回访的客户是ClkLog最早的一批付费用户—…

国思RDIF低代码快速开发框架 v6.2版本发布

国思RDIF企业级低代码开发平台,给用户和开发者最佳的框架平台方案,为企业快速构建跨平台、企业级的应用提供强大支持。致力于解决企业信息化项目交付难、实施效率低、开发成本高的问题。能帮助企业快速构建美观易用、架构专业、安全可控的企业级多终端应用,并可随需而变。1、…

如何用Leangoo破解需求隔离与频繁变更的协作困局?

本文探讨了敏捷工具在团队需求管理中的优缺点。四款主流敏捷工具有各自的特点和适用场景,适用于不同的团队和需求。领歌更加适合国内的中小团队快速迭代需求。作为一位经历过“需求文档满天飞、系统各自为战”的研发负责人,我深知团队在需求频繁变更时面临的痛点——信息割裂…

数字先锋 | 如何提升工业园区算力服务,天翼云息壤给出答案!

AI时代,算力作为数字化转型的关键生产力,重要性不言而喻。在城市发展中,一个城市的算力应用水平,直接决定了它在数字经济赛道的发展潜力。因此,加快建设算力产业、推动算力互联互通,成为我国各城市驱动经济社会快速发展的重要抓手。 在苏州市工业园区(以下简称“工业园区…