• Linux
  • apache
  • centos
  • Git版本管理
  • Linux基本命令
  • linux配置与优化
  • Nginx
  • PHP
  • Redis
  • Supervisor
  • Swoole
  • windows
  • THINKPHP
  • 开发者手册
  • Chat GPT / Open Ai
  • python中os.environ的使用详解

    全屏阅读
  • 基本信息
  • 作者:
  • 作者已发布:925篇文章
  • 发布时间:2023年09月06日 16:52:28
  • 所属分类:python3
  • 阅读次数:319次阅读
  • 标签:
  • 1. 简介

    在python 中,通过 os.environ 获取环境变量。


    什么是环境变量呢?环境变量是程序和操作系统之间的通信方式。有些字符不宜明文写进代码里,比如数据库密码,个人账户密码,如果写进自己本机的环境变量里,程序用的时候通过 os.environ.get() 取出来就行了。这样开发人员本机测试的时候用的是自己本机的一套密码,生产环境部署的时候,用的是公司的公共账号和密码,这样就能增加安全性。os.environ 是一个字典,是环境变量的字典。通过os.environ.get(“HOME”),就可以获取环境变量HOME的值,如果有这个键,返回对应的值;如果没有,返回 none


    2. key 字段详解

    os.environ.keys() 主目录下所有的 key


    image.png


    2.1 常见 key 字段

    windows:

    os.environ['HOMEPATH']:当前用户主目录。
    os.environ['TEMP']:临时目录路径。
    os.environ["PATHEXT"]:可执行文件。
    os.environ['SYSTEMROOT']:系统主目录。
    os.environ['LOGONSERVER']:机器名。
    os.environ['PROMPT']:设置提示符。

    linux:

    os.environ['USER']:当前使用用户。
    os.environ['LC_COLLATE']:路径扩展的结果排序时的字母顺序。
    os.environ['SHELL']:使用shell的类型。
    os.environ['LAN']:使用的语言。
    os.environ['SSH_AUTH_SOCK']:ssh的执行路径。

    3. os.environ.get() 用法

    os.environ 是一个环境变量的字典,可以通过 get 方法获取键对应的值。如果有这个键,返回对应的值,如果没有,则返回 none


    import os

    print(os.environ.get("HOME"))

    也可以设置默认值,当键存在时返回对应的值,不存在时,返回默认值


    print(os.environ.get("HOME", "default"))#环境变量HOME不存在,返回default

    4. 环境变量的增删改查和判断是否存在

    4.1 新增环境变量

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

    4.2 更新环境变量

    os.environ['环境变量名称']='新环境变量值'

    4.3 获取环境变量

    os.environ['环境变量名称']
    os.getenv('环境变量名称')
    os.environ.get('环境变量名称', '默认值')    #默认值可给可不给,环境变量不存在返回默认值

    4.4 删除环境变量

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

    4.5 判断环境变量是否存在

    '环境变量值' in os.environ   # 存在返回 True,不存在返回 False

     

    顶一下
    (0)
    100%
    订阅 回复
    踩一下
    (0)
    100%
    » 郑重声明:本文由mpxq168发布,所有内容仅代表个人观点。版权归恒富网mpxq168共有,欢迎转载, 但未经作者同意必须保留此段声明,并给出文章连接,否则保留追究法律责任的权利! 如果本文侵犯了您的权益,请留言。
  • 【上一篇】
  • 【下一篇】
  • 目前有 0 条留言 其中:访客:0 条, 博主:0 条

    给我留言

    您必须 [ 登录 ] 才能发表留言!