Python3中真真假假True、False、None等含义详解

栏目: Python · 发布时间: 6年前

内容简介:在Python中,不仅仅和类C一样的真假类似,比如1代表真,0代表假。Python中的真假有着更加广阔的含义范围,Python会把所有的空数据结构视为假,比如在Python中None不仅仅代表False,它本身就是一个特殊的空对象,可以用来占位,比如我们可以利用None实现类似C中定义数组的方式,预定义列表的大小,实现对可能的索引进行赋值,而为赋值的索引都为None空列表定义结果

Python 中,不仅仅和类C一样的真假类似,比如1代表真,0代表假。Python中的真假有着更加广阔的含义范围,Python会把所有的空数据结构视为假,比如 [] (空列表)、 {} (空集合)、 '' (空字符串)等,而与之相反的非空数据结构即为真

简单对比代码:

# 遍历列表中的示例元素,获取对应的真假:
for elenment in ['', 'S', [], [1, 2], {}, {3, 'SSS'}, 0, 0.0, 1, None]:
    if elenment:
        print(elenment, True) 
    else:
        print(elenment, False) 
复制代码

示例结果:

False
S True
[] False
[1, 2] True
{} False
{'SSS', 3} True
0 False
0.0 False
1 True
None False
复制代码

None对象

在Python中None不仅仅代表False,它本身就是一个特殊的空对象,可以用来占位,比如我们可以利用None实现类似C中定义数组的方式,预定义列表的大小,实现对可能的索引进行赋值,而为赋值的索引都为None

L = [None] * 10
print(L)
复制代码

空列表定义结果

[None, None, None, None, None, None, None, None, None, None]
复制代码

布尔(bool)值

在Python中布尔值,True和False不仅仅可以表示真与假,甚至可以用于数学运算:

print(True+1)
print(False+1)
print(True+False)
复制代码

运算结果

2
1
1
复制代码

即True为1,False为0,为何Python中布尔值可以进行数学运算? 我们可以利用 isinstance 验证其是否为整型:

print(isinstance(True, int))
print(isinstance(False, int))
复制代码

验证结果:

True
True
复制代码

即实质上在Python中布尔值本身是整型(int),即bool类型就是int类型的子类。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Spark SQL内核剖析

Spark SQL内核剖析

朱锋、张韶全、黄明 / 电子工业出版社 / 2018-8 / 69.00元

Spark SQL 是 Spark 技术体系中较有影响力的应用(Killer application),也是 SQL-on-Hadoop 解决方案 中举足轻重的产品。《Spark SQL内核剖析》由 11 章构成,从源码层面深入介绍 Spark SQL 内部实现机制,以及在实际业务场 景中的开发实践,其中包括 SQL 编译实现、逻辑计划的生成与优化、物理计划的生成与优化、Aggregation 算......一起来看看 《Spark SQL内核剖析》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

MD5 加密
MD5 加密

MD5 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具