检查环境变量是否存在并设置为 True

新手上路,请多包涵

所以,我想检查并验证给定变量“abc”是否存在并且它是真的。如果变量存在并且为假,那么我希望它转到其他地方。这是我如何让它在 python 中工作:

 env = os.environ.copy()
if "abc" in env and env['abc'] == "True":
    print "Works"
else:
    print "Doesn't work"

有更好的方法吗?

原文由 Jason 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 947
2 个回答

您可以检查该变量是否在 globals()locals() 返回的字典中。 (感谢 Aaron 提醒我添加完整代码)

对于局部变量:

 if locals().get('abc'):
    print(abc)

对于全局变量:

 if globals().get('abc'):
    print(abc)

对于环境变量:

 if os.environ.get('abc')=='True':
    #abc is set to True

更多信息在这里:

https://docs.python.org/3/library/functions.html#locals https://docs.python.org/3/library/functions.html#globals

原文由 victor 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以使用:

 env.get("abc", False)

如果“abc”不在环境中,则默认值为 False。

原文由 Bubble Bubble Bubble Gut 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题