如何在python中测试变量是不是为空[重复]

Posted

技术标签:

【中文标题】如何在python中测试变量是不是为空[重复]【英文标题】:How to test a variable is null in python [duplicate]如何在python中测试变量是否为空[重复] 【发布时间】:2017-10-11 13:42:38 【问题描述】:
val = ""

del val

if val is None:
    print("null")

我运行了上面的代码,但得到了NameError: name 'val' is not defined

如何判断变量是否为空,避免出现NameError?

【问题讨论】:

您可以使用try : except 块来检查是否抛出了错误 这不是一个“空”变量 - 变量不存在...不存在的东西和具有“空”值的存在之间有明显的区别(在Python 通常是 None 单例) 【参考方案1】:

测试指向None 的名称和存在的名称是两个语义不同的操作。

检查val 是否为无:

if val is None:
    pass  # val exists and is None

检查名称是否存在:

try:
    val
except NameError:
    pass  # val does not exist at all

【讨论】:

【参考方案2】:
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")

【讨论】:

【参考方案3】:

您可以在 try and catch 块中执行此操作:

try:
    if val is None:
        print("null")
except NameError:
    # throw an exception or do something else

【讨论】:

以上是关于如何在python中测试变量是不是为空[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何检查变量是不是不为空?

Python Django 模板和测试变量是不是为空或空字符串

我如何测试一个 Python 变量是一个集合 [重复]

在Python中测试变量是不是存在的最佳方法[重复]

如何测试 sqllite3 在 Python 中返回结果或为空的位置?

如何在jquery中检查输入类型号是不是为空[重复]