如何访问环境变量值?

我设置了要在我的Python应用程序中访问的环境变量。 我如何获得这个价值?


#1楼

检查密钥是否存在(返回TrueFalse

'HOME' in os.environ

您也可以在打印密钥时使用get() 。 如果要使用默认值,则很有用。

print(os.environ.get('HOME', '/home/username/'))

其中/home/username/是默认值


#2楼

如果您打算在生产Web应用程序代码中使用该代码,
使用Django / Flask之类的任何网络框架,使用envparse之类的项目,使用它您都可以将值读取为定义的类型。

from envparse import env
# will read WHITE_LIST=hello,world,hi to white_list = ["hello", "world", "hi"]
white_list = env.list("WHITE_LIST", default=[]) 
# Perfect for reading boolean
DEBUG = env.bool("DEBUG", default=False)

注意:建议使用kennethreitz的autoenv工具来制作特定于项目的环境变量,请注意,使用autoenv请保留.env文件为私有文件(不公开)


#3楼

import os
for a in os.environ:
    print('Var: ', a, 'Value: ', os.getenv(a))
print("all done")

这将打印所有环境变量及其值。


#4楼

您可以使用以下命令访问环境变量

import os
print os.environ

尝试查看PYTHONPATH或PYTHONHOME环境变量的内容,也许这将对您的第二个问题有所帮助。 但是,您应该澄清一下。


#5楼

至于环境变量:

import os
print os.environ["HOME"]

恐怕您还得再充实一点,才可以得到一个不错的答案。


#6楼

通过os.environ访问环境变量

import os
print(os.environ['HOME'])

或者,您可以使用以下命令查看所有环境变量的列表:

os.environ

有时您可能需要查看完整的列表!

# using get will return `None` if a key is not present rather than raise a `KeyError`
print(os.environ.get('KEY_THAT_MIGHT_EXIST'))

# os.getenv is equivalent, and can also give a default value instead of `None`
print(os.getenv('KEY_THAT_MIGHT_EXIST', default_value))

Windows上的Python默认安装C:\\Python 。 如果要在运行python时查找,可以执行以下操作:

import sys
print(sys.prefix)

#7楼

实际上,可以这样做:

import os

for item, value in os.environ.items():
    print('{}: {}'.format(item, value))

或者简单地:

for i, j in os.environ.items():
    print(i, j)

要查看参数中的值:

print(os.environ['HOME'])

要么:

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

设置值:

os.environ['HOME'] = '/new/value'

#8楼

还有很多很棒的图书馆。 例如, Envs将允许您从环境变量rad中解析对象。 例如:

from envs import env
env('SECRET_KEY') # 'your_secret_key_here'
env('SERVER_NAMES',var_type='list') #['your', 'list', 'here']

#9楼

对于django,请参阅( https://github.com/joke2k/django-environ

$ pip install django-environ

import environ
env = environ.Env(
# set casting, default value
DEBUG=(bool, False)
)
# reading .env file
environ.Env.read_env()

# False if not in os.environ
DEBUG = env('DEBUG')

# Raises django's ImproperlyConfigured exception if SECRET_KEY not in os.environ
SECRET_KEY = env('SECRET_KEY')

#10楼

最初的问题(第一部分)是“如何在Python中检查环境变量”。

这是检查$ FOO是否设置的方法:

try:  
   os.environ["FOO"]
except KeyError: 
   print "Please set the environment variable FOO"
   sys.exit(1)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值