【发布时间】:2014-11-05 06:22:24
【问题描述】:
对于一个 python 程序,我使用os.environ() 来获取具有某个键的环境变量。但是,如果环境中不存在密钥,我希望能够做一些事情,而不是抛出KeyError。
我查找了一些解决方案,但 os.environ.get() 和 os.getenv() 的行为似乎与我的预期不同。有什么方法可以使用os.environ() 并且仍然可以解决不存在的环境变量?
【问题讨论】:
-
os.environ.get(keyname, value_if_not_there)是我会推荐的...你能解释一下它的行为与你预期的不同吗? (当然,另一种选择是将整个 shebang 放在 try/except 块中,然后捕获 KeyError 并采取相应措施,但它不太可能产生像 .get ... 这样好的代码) -
还要注意
os.environ不是一个函数,所以你不应该调用它(尽管我怀疑你不是或者你不会得到一个KeyError)。 -
我的问题是我调用的是 os.environ.get[] 而不是 os.environ.get(),所以现在的行为是我所期望的。谢谢!
标签: python environment-variables