python如何判断变量是不是为none?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python如何判断变量是不是为none?相关的知识,希望对你有一定的参考价值。

参考技术A python中判断变量是否为none的方法:

第一种:if X is None;
第二种:if not X;
当X为None, False, 空字符串"", 0, 空列表[], 空字典, 空元组()这些时,not X为真,即无法分辨出他们之间的不同。
第三种:if not X is None;
在Python中,None、空列表[]、空字典、空元组()、0等一系列代表空和无的对象会被转换成False。除此之外的其它对象都会被转化成True。
更多Python知识请关注Python自学网。

如何在javascript中检查Django对象是不是为None?

【中文标题】如何在javascript中检查Django对象是不是为None?【英文标题】:How to check if Django object is None in javascript?如何在javascript中检查Django对象是否为None? 【发布时间】:2016-12-29 16:36:00 【问题描述】:

js中如何判断一个Django对象是否为None?

我目前有一个变量person 存储一个Django 对象或None。在我的 js 中,我有:

if (person != None) 
    execute_function(person)

这里似乎有什么问题?

【问题讨论】:

What is the equivalent of "none" in django templates?的可能重复 试试if (person != "None")。或者你可以使用 Django % if % 而不是 JavaScript。 您无法使用客户端 javascript 访问 django 对象 当它被解释为 JavaScript 时,它已经不是 Django 对象了。 Django 模板在服务器上解析并将结果发送到浏览器。当浏览器加载页面时,JavaScript 开始运行。您可以在 JavaScript 代码中测试 django 对象将输出到 html 的文本。 【参考方案1】:

这对我有用:

% if person != None %
    var p = ...
    ...
% endif %

【讨论】:

【参考方案2】:

John Smiths 的回答最有意义,请在 Django 的模板中查看。 其实更好的是:

% if person %
    execute function
% endif%

如果您需要使用 JavaScript 检查它,JavaScript 使用 null 而不是 None,因此假设 JavaScript 代码也在 Django html 模板中(而不是作为外部文件加载),这应该可以工作。

if (person != null) 
    execute_function(person)

编辑:

添加更多细节: 这可能会被解析为:

if (john != null)
    execute_function(john)

JavaScipt 不会理解 john ,但它会理解引用的版本 'john' :

if ('john') != null)
    execute_function('john')

实现这一点的最简单方法是向 Person 模型添加一个模型方法。

Class Person(models.Model):
    ...field definitions here.

    def quoted_name(self):
        return "'%s'" % self.name

然后在模板中(并且空字符串评估为假):

if (person.quoted_name ) 
    execute_function(person.quoted_name )

【讨论】:

实际上,您可能需要有条件地引用 person 的输出,否则 JavaScript 会将其视为未声明的变量。我个人会在 person 上定义一个模型方法(在 Django 中),以返回 person 将输出到模板的引用版本。 person.quoted_name 或类似的东西。 您能否澄清引用版本的含义或提供示例?

以上是关于python如何判断变量是不是为none?的主要内容,如果未能解决你的问题,请参考以下文章

Python 判断变量是否是 None 的三种写法

如何在javascript中检查Django对象是不是为None?

python none和null的区别

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

[Python]判断序列是否为空的正确姿势

Python-变量-数字类型