val = ""
del val
if val is None:
print("null")
我运行了上面的代码,但是得到了NameError: name 'val' is not defined
错误。
如何判断一个变量是否为空,并避免出现 NameError 错误?
val = ""
del val
if val is None:
print("null")
我运行了上面的代码,但是得到了NameError: name 'val' is not defined
错误。
如何判断一个变量是否为空,并避免出现 NameError 错误?
测试指向None
的名称和存在的名称是两个语义上不同的操作。
要检查val
是否为None
:
if val is None:
pass # val exists and is None
检查名称是否存在:
try:
val
except NameError:
pass # val does not exist at all
try:
if val is None: # The variable
print('It is None')
except NameError:
print ("This variable is not defined")
else:
print ("It is defined and has a value")
try:
if val is None:
print("null")
except NameError:
# throw an exception or do something else
try: except
块来检查错误是否被抛出。 - LudisposedNone
单例)之间存在明显的区别。 - Jon Clements