Python语法总结:not(常出现错误)

0、not是什么

在python中not是逻辑判断词,用于布尔型True和False之前

a = not Ture
# a == False
b = not False
# b == True

1、not的用法

(1)判断语句

if not a:# 如果a是False,执行的语句

(2)判断元素是否在列表或者字典中

a = 5
b = [1,2,3,4]
if a not in b:b.append(a)

2、刷题是判断变量不为None

  • if not x:
  • if x is not None

💡首先明确一点
在Python中,None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()都相当于False

  • if not x:
# list1是空列表
list1 = []
# list2不存在
list2 = None# 使用 `if not x:`判断
if not list1:print("list1可以执行") # not [] -> True
if not list2:print("list2可以执行")  # not None ->True
>>>list1可以执行
>>>list2可以执行

❌不可以区分空列表和None
如果要使用if not x:,必须清楚x等于None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()时对你的判断没有影响

  • if x is not None
# list1是空列表
list1 = []
# list2不存在
list2 = None# 使用 `if x is not None`判断
if list1 is not None: print("list1可以执行")
if list2 is not None:print("list2可以执行")
>>>list1可以执行   `if 空集 is not None` -> True
# `if None is not None` ->False

⭐️可以区分空列表和None

if x is not None是最好的写法,清晰,不会出现错误,以后坚持使用这种写法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/790510.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安装nodejs、npm、coturn

安装nodejs sudo apt updatesudo apt install nodejssudo apt install npm安装SSL //更新apt-get下载源节点 sudo apt-get update//查看当前apt-get下载源节点里libssl-dev可下载安装的所有版本,和默认的最合适的版本 sudo apt-cache policy libssl-dev//下载并默认…

Django路由分发的三种方式以及命名空间namespce——附带源码解析

目录 1. 前言 2. include常规路由分发 3. include源码解析 4. 路由分发的第二种写法 5. 路由分发的第三种写法 6. 小结 7. 有关namespace 8. 最后 1. 前言 本篇文章主要是讲解路由分发的三种方式。当然,你可能在想,一般做路由分发只需要一个incl…

尚硅谷2024最新Git企业实战教程 | Git与GitLab的企业实战

这篇博客是尚硅谷2024最新Git企业实战教程,全方位学习git与gitlab的完整笔记。 这不仅仅是一套Git的入门教程,更是全方位的极狐GitLab企业任务流开发实战!作为一应俱全的一站式DevOps平台,极狐GitLab的高阶功能全面覆盖&#xff0…

2024-04-03 NO.4 Quest3 手势追踪抓取物体

文章目录 1 手势抓取方式1.1 Hand Grab1.2 Touch Hand Grab1.3 Distance Hand Grab 2 HandGrabExamples 示例场景2.1 Interactor 对象2.2 Interactable 对象2.2.1 父子结构2.2.2 “Hand Grab lnteractable” 脚本2.2.3 “Move Towards Target Provider” 脚本2.2.4 其他 Moveme…

5.5G,只比6G少0.5G

5.5G成为通信行业2024年开年的一大焦点。提到5.5G,多出来的0.5G又是啥?为什么不直接迈向6G时代?今天我们一探究竟! “0.5G”,现在与未来的桥梁 2021年,国际标准组织3GPP为通信技术的进一步发展定义了新的里…

Spring vs. Spring Boot深入比较

在Java开发领域,Spring框架是一个广泛使用的轻量级应用开发框架,而Spring Boot则是基于Spring框架的快速应用开发工具。尽管它们都属于Spring生态系统,但它们之间有着明显的区别。本文将深入比较Spring和Spring Boot,并通过案例展…

AI绘图:Stable Diffusion WEB UI 详细操作介绍:进阶-面部修复和调参

结合两篇文章完成了本地部署和基础操作,现在我们来介绍下进阶内容:面部修复,高清修复和调参区。 一:脸部修复 面部修复的适用在画真人、三次元的场景,特别是在画全身的时候 一般在画全身,由于脸部占比的空间比较小,那么绘制出来的效果就会比较差 1.面部修复 SD 支持…

利用sqoop实现sql表数据导入到Hadoop

1.在开发这创建好sql表后,开始执行下面步骤 2.sqoop的安装路径,我这里放在以下位置 3. 进入到option2脚本中,下面是脚本里的内容 下面四点要根据情况随时更改: 1>jdbc:mysql://node00:3306/数据库名 2>sid,sname->前…

BGP-(as-path-filter)

BGP-as-path-filter,缺省 as-path-filter,正则表达式,as-path过滤器,对于BGP的as-path属性实际上可以看成是一个包含空格的字符串。 特点:1、通过对BGP路由的as-path属性进行匹配达到对BGP路由的过滤。 2、在route-…

鸿蒙分布式音乐播放-如何完成播放、暂停、上一曲、下一曲功能

介绍 本示例使用fileIo获取指定音频文件,并通过AudioPlayer完成了音乐的播放完成了基本的音乐播放、暂停、上一曲、下一曲功能;并使用DeviceManager完成了分布式设备列表的显示和分布式能力完成了音乐播放状态的跨设备分享。 本示例用到了与用户进行交…

【VUE+ElementUI】el-table表格固定列el-table__fixed导致滚动条无法拖动

【VUEElementUI】el-table表格固定列el-table__fixed导致滚动条无法拖动 背景 当设置了几个固定列之后,表格无数据时,点击左侧滚动条却被遮挡,原因是el-table__fixed过高导致的 解决 在index.scss中直接加入以下代码即可 /* 设置默认高…

音频转换工具 Bigasoft FLAC Converter for Mac

Bigasoft FLAC Converter for Mac是一款专为Mac用户设计的音频转换工具,它能够将FLAC音频文件高效、高质量地转换为其他常见的音频格式,如MP3、AAC等。这款软件具有直观易用的界面,使用户能够轻松上手,无需复杂的操作步骤即可完成…

QT 线程的启动

QT 提供了线程对线程的支持,这包括一组与平台无关的线程类、一个线程安全的发送事件的方式以及跨线程的信号-槽的关联。 这些使得可以轻松的开发移植的多线程QT应用程序,可以充分的利用多处理器的电脑。 多线程编程也可以有效解决在不冻结一个应用程序界…

Redis底层数据结构-Dict

1. Dict基本结构 Redis的键与值的映射关系是通过Dict来实现的。 Dict是由三部分组成,分别是哈希表(DictHashTable),哈希节点(DictEntry),字典(Dict) 哈希表结构如下图所…

Qt——Qt实现数据可视化之QChart的使用总结(使用QChart画出动态显示的实时曲线)

【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C++语言开发基础总结》 《从0到1学习嵌入式Linux开发》

阿里云服务器购买租用价格多少钱一年?61元、99元、165元、199元

阿里云服务器租用价格表2024年最新,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元,ECS u1服务器2核4G5M固定带宽199元一年,2核4G4M带宽轻量服务器一年165元12个月,2核…

使用Docker 部署jenkins 实现自动化部署

使用Docker部署jenkins实现自动化部署ruoyi-vue docker jenkinsJava jenkinsfilevue jenkinsfileDockerfile 部署脚本Java Dockerfilenginx Dockerfilenginx-dev.conf 使用docker部署Jenkins,项目: https://gitee.com/y_project/RuoYi-Vue 作为部署项目示范 docker…

Delphi 是一种内存安全的语言吗?

上个月,美国政府发布了 "回到基石 "报告: 通往安全和可衡量软件之路 "的报告。该报告是美国网络安全战略的一部分,重点关注多个领域,包括内存安全漏洞和质量指标。 许多在线杂志都对这份报告进行了评论&#xff0…

C语言内存函数,让内存管理更高效!

1. memcpy使⽤和模拟实现 2. memmove使⽤和模拟实现 3. memset函数的使⽤ 4. memcmp函数的使⽤ 正文开始: 1. memcpy 使⽤和模拟实现 void * memcpy ( void * destination, const void * source, size_t num ); • 函数memcpy从source的位置开始向后复…

Linux中部署Java jar 包 shell 脚本

Linux中部署Java jar 包 shell 脚本 #!/bin/bash set -e# 基础 # export JAVA_HOME/work/programs/jdk/jdk1.8.0_181 # export PATHPATH$PATH:$JAVA_HOME/bin # export CLASSPATH$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarDATE$(date %Y%m%d%…