所以,我想检查并验证一个给定的变量" abc"存在,这是真的。如果变量存在且为False,那么我希望它转到else。以下是我在python中使用它的方法:
env = os.environ.copy()
if "abc" in env and env['abc'] == "True":
print "Works"
else:
print "Doesn't work"
有更好的方法吗?
答案 0 :(得分:4)
您可以检查变量是否在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
答案 1 :(得分:1)
您可以使用:
env.get("abc", False)
如果“abc”不在env。
中,则False是默认值答案 2 :(得分:1)
您可以使用Try Except Block。
try:
# Try calling ABC here anyway you like
# Here I am just printing it
print(abc)
except NameError:
print("Variable ABC does not exist")
答案 3 :(得分:0)
从env中获取它就足够了,我想
env.get('abc')