【发布时间】:2014-01-10 21:24:36
【问题描述】:
我想检查是否已经定义了名称“my_name”(这是我的类对象)。我如何在不使用 try-except 的情况下做到这一点:
try:
if c:
print("ok")
except NameError:
print("no")
【问题讨论】:
标签: python
我想检查是否已经定义了名称“my_name”(这是我的类对象)。我如何在不使用 try-except 的情况下做到这一点:
try:
if c:
print("ok")
except NameError:
print("no")
【问题讨论】:
标签: python
if 'c' in locals():
print ('Ok')
else:
print('no')
如果您需要检查全局,请改为使用 globals()
【讨论】:
如果您不想使用try/except,可以查找locals() 和globals()。这样的检查看起来像:
if locals().get('c', globals().get('c')) is None:
print "no"
else:
print "ok"
if 条件中的调用将首先查找局部变量,如果在那里找不到您的变量,则将查找全局变量。如果在其中一个或另一个中找不到变量,则返回 None
【讨论】: