python的条件判断中的not、is、is not、is not None、is None

目录

[1.not A](#1.not A)

[2.is和is not](#2.is和is not)

[3.is not None和is None](#3.is not None和is None)

4.实例


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.实例

python 复制代码
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
python 复制代码
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

相关推荐
破茧蝴蝶2 小时前
Python分布式爬虫完整教程
开发语言·python
benchmark_cc2 小时前
量化系统架构设计:为什么应该将数据获取与策略逻辑解耦?
python·数据分析·pandas·量化交易·股票数据·quantdash
狗凯之家源码网2 小时前
全新 PHP 轻量客服聊天室源码深度评测
开发语言·php·聊天室系统
凤山老林3 小时前
Spring Boot 启动冲刺:耗时剖析、懒加载策略与事件驱动初始化优化
spring boot·后端·python
小白快快跑哦3 小时前
python-字符串全解(六):正则表达式-逻辑运算或
python·正则表达式·字符串·逻辑运算
远离UE43 小时前
UE5 Substrate Thin Film 源码拆析
开发语言·javascript·ue5
keyipatience3 小时前
JavaScript学习(1)书写位置,变量、数据类型、运算符
开发语言·前端·javascript·css·学习
Thinker QAQ3 小时前
并发编程(九):BlockingQueue 与 Channel——语言层的原子性、可见性与有序性
java·python·go·并发编程·channel·blockingqueue·message passing
道满科技3 小时前
Function Calling 参数总出错?只修参数就行
linux·windows·python
栈帧之外4 小时前
【C++】STL之set
开发语言·c++