Python 判断变量是否是 None 的三种写法
liuian 2024-11-28 00:42 63 浏览
代码中经常会有变量是否为None的判断,有三种主要的写法:
- 第一种是if x is None;
- 第二种是 if not x:;
- 第三种是if not x is None(这句这样理解更清晰if not (x is None)) 。
如果你觉得这样写没啥区别,那么你可就要小心了,这里面有一个坑。先来看一下代码:
在python中 None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()都相当于False ,即:
代码如下:
因此在使用列表的时候,如果你想区分x==[]和x==None两种情况的话, 此时if not x:将会出现问题:
也许你是想判断x是否为None,但是却把x==[]的情况也判断进来了,此种情况下将无法区分。
对于习惯于使用if not x这种写法的pythoner,必须清楚x等于None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()时对你的判断没有影响才行。
而对于if x is not None和if not x is None写法,很明显前者更清晰,而后者有可能使读者误解为if (not x) is None,因此推荐前者,同时这也是谷歌推荐的风格
结论:
if x is not None是最好的写法,清晰,不会出现错误,以后坚持使用这种写法。 使用if not x这种写法的前提是:必须清楚x等于None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()时对你的判断没有影响才行。
- 上一篇:Python | 字典
- 下一篇:Python字典入门:掌握基础知识
相关推荐
- 邮箱免费注册入口(个人邮箱注册申请免费注册)
-
163邮箱官网注册入口是;https://smart.mail.163.com/login.htm163邮箱注册方法;1在浏览器搜索“网易邮箱”。2进入网易邮箱官网https://smart.mail...
- windows7如何换主题(win7系统如何更改主题)
-
在Windows7中更改主题的方法如下:1.点击桌面空白处,选择“个性化”选项。2.在“个性化”窗口中,可以直接选择几种预设好的主题,或者点击“获取更多主题”在线下载更多主题。3.如果要自定义...
- thinkpad x390(thinkpadx390哪一年的)
-
x390好,他是最新的芯片,他的性能方面得到了很大的提升,用的也是最新的工艺和材料,所以在性能表现上提升了很。他用的是最新的处理方式,在使用的时候不需要大安心。他发热发烫,对电量的控制也做得比较到位,...
- iso文件要解压吗(iso文件要解压吗手机)
-
一般来说,整个一套的iso体系文件还是比较多的,如果是通过邮件等形式来传送的话,一般都会把文件进行压缩后再传送,以便文件能够顺利发送。所以在接收到这些文件后需要解压后才能够查阅。如果电脑里没有解压程序...
- sd卡未格式化是什么意思(sd卡提示格式化但无法格式化)
-
存储卡未格式化意味着该SD卡上没有被操作系统识别的文件系统。这通常发生在初次使用SD卡时,或者在从另一台设备中移除SD卡后插入到新设备时。在这种情况下,您需要格式化SD卡以便于使用。请注意,格式化会清...
- 附近上门维修电话(附近修门窗上门维修电话)
-
供电公司的资产产权到用户的计量箱计量箱以下的线路和室内设备属于用户资产,所以9598电工有权可以拒绝电表以下线路的维修,如果房屋内的线路或电苗以下线路存在损坏故障无法正常使用时,可以找相关维修机构进行...
- ghost硬盘镜像(ghost硬盘镜像备份)
-
答具体方法如下步骤一:打开“ToDisk”对拷选项(1)首选打开Ghost工具,进入界面后,选择“Local”→“Disk”→“ToDisk”。步骤二:选择源数据硬盘(2)我们需要选择源数据硬盘...
- 电脑系统自动更新怎么关闭win10
-
方法:1.首先同时按下键盘上的“win”键和“R”键,在打开的运行对话框中输入“services.msc”并点击“确定”;? 2.在服务中找到“windowsupdate”服务并进入;? 3.将...
- 戴尔游匣官网(戴尔inspiron游匣)
-
可能不小心删掉。戴尔g15新机没有此电脑的解决方法如下:右键点击桌面的空白处,在弹出来的菜单里选择最下边的【个性化】选项,在设置菜单里选择【主题】选项,然后进入主题菜单;下拉界面,打开【桌面图标设置】...
- recovery下载中文版(recovery.zip下载)
-
在大多数情况下,进入iQOO手机的Recovery模式可以让用户进行一些高级操作,例如刷入第三方ROM、清除手机缓存等操作。但是,如果您试图在Recovery模式下下载系统,这通常是不可能的。因为Re...
- win7旗舰版密钥有什么用(win7旗舰版密钥有什么用吗)
-
以下是win7旗舰版密钥激活方法:1.首先,获取一份合法的win7旗舰版密钥。2.打开“开始菜单”,然后选择“计算机”或“我的电脑”。3.在“计算机”或“我的电脑”窗口中,选择“系统属性”(右键...
- 风林火山香港电影(风林火山电影完整)
-
麦浚龙电影《风林火山》将于2019年上映“风林火山”取自《孙子兵法》,但却不是一部古装电影,而是一部警匪片,故事主要围绕内地和香港缉毒警察与贩毒展开,由梁家辉搭档金城武担任双男主,刘青云、古天乐、高圆...
- 打印机脱机状态怎么回事(打印机脱机解决方案)
-
, 打印机脱机故障情况分析: 1、如果打印机在电脑上显示脱机,请检查打印机端口是否开启及电脑上的端口放开没有,还有可能要更换最新的打印驱动 2、如果是网络打印机,ping打印机地址确保网络是连通...
- 网速很快打开网页很慢(网络打开网页慢)
-
1、第一种情况是因为电脑太长时间没有清理,垃圾太多,导致网页打开很慢,垃圾可以使用360安全卫士进行清理。2、第二种情况通常是因为网络的DNS问题,DNS的修复方法就是利用360安全卫士进行修复打开3...
- 麦克风怎么连接电脑(麦克风怎么连接手机)
-
连接方法1、首先将麦克风设备与电脑连接,然后打开电脑点击开始图标。2、在左侧选择设置图标,进入设置界面点击系统图标。3、接着切换为声音页面,在输入一栏选择输入设备。4、最后点击管理声音设备选项,确认使...
- 一周热门
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)
