首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Python中设置环境变量?

如何在Python中设置环境变量?
EN

Stack Overflow用户
提问于 2011-05-12 06:25:11
回答 9查看 1.1M关注 0票数 874

我需要在Python脚本中设置一些环境变量,我希望从Python调用的所有其他脚本都能看到环境变量的设置。

如果我这么做了

代码语言:javascript
复制
os.environ["DEBUSSY"] = 1

它抱怨说1必须是一个字符串。

我还想知道如何在设置Python (在脚本的后半部分)中读取环境变量。

EN

回答 9

Stack Overflow用户

发布于 2011-05-12 06:27:17

环境变量必须是字符串,因此使用

代码语言:javascript
复制
os.environ["DEBUSSY"] = "1"

将变量DEBUSSY设置为字符串1

要稍后访问此变量,只需使用:

代码语言:javascript
复制
print(os.environ["DEBUSSY"])

子进程自动继承父进程的环境变量--您无需执行任何特殊操作。

票数 1.1K
EN

Stack Overflow用户

发布于 2011-05-12 20:29:27

您可能需要考虑代码健壮性的一些其他方面;

将整数值变量存储为环境变量时,请尝试

代码语言:javascript
复制
os.environ['DEBUSSY'] = str(myintvariable)

然后,对于检索,考虑到为了避免错误,您应该尝试

代码语言:javascript
复制
os.environ.get('DEBUSSY', 'Not Set')

可能用'-1‘代替'Not Set’

所以,把所有这些放在一起

代码语言:javascript
复制
myintvariable = 1
os.environ['DEBUSSY'] = str(myintvariable)
strauss = int(os.environ.get('STRAUSS', '-1'))
# NB KeyError <=> strauss = os.environ['STRAUSS']
debussy = int(os.environ.get('DEBUSSY', '-1'))

print "%s %u, %s %u" % ('Strauss', strauss, 'Debussy', debussy)
票数 137
EN

Stack Overflow用户

发布于 2011-05-12 06:27:31

os.environ["DEBUSSY"] = '1'呢?环境变量始终是字符串。

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5971312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档