当你在QGIS的Python控制台中,对NULL值执行判断(value == NULL),是可以运行的。
但是,当我从插件运行时,NULL 既不在全局命名空间中,也不在本地命名空间中,报错如下,该如何解决呢?
NameError: global name 'NULL' is not defined
其实PyQGIS在Core中定义了NULL,直接引入即可,如下所示:
from qgis.core import NULL
if f["SAMPLE"] == NULL:
pass
之所以这样写,归根到底,是因为PyQGIS API的内部,当需要处理None条件时,均使用了QPyNullVariant的原因。
更详细的接口信息,请访问本站QGIS中文文档。
