我需要在Python脚本中设置一些环境变量,我希望从Python调用的所有其他脚本都能看到环境变量的设置。
如果我这么做了
os.environ["DEBUSSY"] = 1
它抱怨说1
必须是一个字符串。
我还想知道如何在设置Python (在脚本的后半部分)中读取环境变量。
发布于 2011-05-12 06:27:17
环境变量必须是字符串,因此使用
os.environ["DEBUSSY"] = "1"
将变量DEBUSSY
设置为字符串1
。
要稍后访问此变量,只需使用:
print(os.environ["DEBUSSY"])
子进程自动继承父进程的环境变量--您无需执行任何特殊操作。
发布于 2011-05-12 20:29:27
您可能需要考虑代码健壮性的一些其他方面;
将整数值变量存储为环境变量时,请尝试
os.environ['DEBUSSY'] = str(myintvariable)
然后,对于检索,考虑到为了避免错误,您应该尝试
os.environ.get('DEBUSSY', 'Not Set')
可能用'-1‘代替'Not Set’
所以,把所有这些放在一起
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)
发布于 2011-05-12 06:27:31
那os.environ["DEBUSSY"] = '1'
呢?环境变量始终是字符串。
https://stackoverflow.com/questions/5971312
复制相似问题