python条件判断中not、is、is not、is not None、is None代码实例

 更新时间:2024年03月30日 15:01:52   作者:阿波拉  
None是python中的一个特殊的常量,表示一个空的对象,下面这篇文章主要给大家介绍了关于python条件判断中not、is、is not、is not None、is None的相关资料,需要的朋友可以参考下

1.not A

是判断A是否为0、False、空字符串、空列表、空字典、空元组以及None,满足任一条件即返回True

2.is和is not

是不是某种对象

3.is not None和is None

None:在Python中是一个单例对象,一个特殊的常量:没有值、空值、值不存在

对于在判断条件中的对象值的判断,除了False外,None、0、数据为空[]、""、{}、()都是False,即bool(None)、bool(0)、bool([])、bool("")、bool({})、bool(())的值均为false

可以认为判断一个变量是否为None, None 可以认为是一个特定的变量, 只要没有被设定为 None 的变量都返回 True, 例如pytorch 中, 对于一些 no_grad 的变量, 它们的 A.grad = None

4.实例

A = []
B = None
C = [1, 2]
 
print(A is not None)
print(B is not None)
print(C is not None)
print('*' * 10)
print(not A)
print(not B)
print(not C)
 
>>True
>>False
>>True
>>**********
>>True
>>True
>>False
if val:
    print('if val')
if not val:
    print('if not val')
if val is not None:
    print('if val is not None')
if val is None:
    print('if val is None')

val为None时:

if not val
if val is None

val为False时:

if not val
if val is not None

val为0时:

if not val
if val is not None

val为1时:

if val
if val is not None

val为[]空列表时:

if not val
if val is not None

val为[1,2]非空列表时:

if val
if val is not None

val为某具体对象时:

if val
if val is not None

附:python中 is None与== None的区别

我们知道对象中有__eq__函数,用于判断两个对象的值是否相等;但是__eq__函数是可以被我们自己定义的。比如我们让__eq__函数用于返回Ture。

但是is判断的是两个对象的id是否相等,即判断a对象是否是b对象。

python中数值类型(int,float),str字符串,tuple都是不可变类型。

python中None是一个特殊的常量,“不同的”None的id是一样的。

所以当判断数据结构中的某一直是否为None时,is会更好一些。

(is函数比==要快一些,不用运行查找和比较函数)

总结 

到此这篇关于python条件判断中not、is、is not、is not None、is None的文章就介绍到这了,更多相关python条件判断实例内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Django 使用VScode 创建工程的详细步骤

    Django 使用VScode 创建工程的详细步骤

    这篇文章主要介绍了Django 使用VScode 创建工程,创建Django 项目,可以和虚拟环境放在同一目录,也可以放在虚拟环境的文件夹里,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • 新年快乐! python实现绚烂的烟花绽放效果

    新年快乐! python实现绚烂的烟花绽放效果

    这篇文章主要为大家详细介绍了python利用可视化技巧实现烟花绽放效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • Python实现视频分帧的方法分享

    Python实现视频分帧的方法分享

    这篇文章主要为大家详细介绍了如何通过Python语言实现视频分帧的功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起尝试一下
    2023-03-03
  • Python 列表(List)的底层实现原理分析

    Python 列表(List)的底层实现原理分析

    这篇文章主要介绍了Python 列表(List)的底层实现原理分析,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Python接口自动化之request请求封装源码分析

    Python接口自动化之request请求封装源码分析

    这篇文章主要介绍了Python接口自动化之request请求封装源码分析,文章围绕主题的相关资料展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • python逐行读取文件内容的三种方法

    python逐行读取文件内容的三种方法

    这篇文章主要介绍了python逐行读取文件内容的三种方法,非常的简单,下面直接看代码吧
    2014-01-01
  • VScode查看python f.write()的文件乱码问题及解决方法

    VScode查看python f.write()的文件乱码问题及解决方法

    这篇文章主要介绍了VScode查看python f.write()的文件乱码问题及解决方法,本文通过图文并茂的形式给大家分享解决方法,需要的朋友可以参考下
    2023-02-02
  • Python使用QQ邮箱发送Email的方法实例

    Python使用QQ邮箱发送Email的方法实例

    实际开发过程中使用到邮箱的概率很高,那么如何借助python使用qq邮箱发送邮件呢?正好最近工作遇到这个需求,所以想着把方法分享出来方便大家,所以这篇文章主要介绍了Python使用QQ邮箱发送Email的实现方法,需要的朋友可以参考。
    2017-02-02
  • Python简单的制作图片验证码实例

    Python简单的制作图片验证码实例

    本篇文章主要介绍了Python简单的制作图片验证码实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • python人工智能tensorflow构建循环神经网络RNN

    python人工智能tensorflow构建循环神经网络RNN

    这篇文章主要为大家介绍了python人工智能tensorflow构建循环神经网络RNN,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05

最新评论