前三篇文章,我们学了字符串、整型、浮点型这三种数据类型。
今天我们将学习最后一种数据类型:布尔型。
xixi支付宝余额是1000块钱,那么“xixi支付宝余额是1000块钱”这个描述就是真的;而“xixi支付宝余额有2000块钱”这个描述就是假的。
在编程中,这种“真”、“假”状态我们用布尔数来表示,“真”是True,“假”是False。
一.布尔数
- 定义:布尔数是一种数据类型,它只有“真”(True)和“假”(False)两种值。
注:True 和 False 不加引号。
a = True
b = False
print(a)
print(b)
在Python中,布尔数是如何得到的呢?
- 可以通过直接赋值的方式,得到布尔数。
如图:True 和 False 属于常量,赋值给变量。
上图中代码输出的结果就是:
True
False
- 另一种方式,是通过比较运算得到。
二.比较运算
a = 3
b = 1
print(a>b)
print(a<b)
如图,3赋值给a,1赋值给b,进行大小的比较。
a > b,是“真”的,输出True;
a < b,是“假”的,输出False。
类似这样进行比较的行为,就是比较运算。
上面的代码对3>1是否成立进行判断。
因为3>1,所以第3行代码输出了True(成立)。
三.比较运算符
类似">“,”<"这样,对二者进行比较的,我们称为比较运算符。
除了">“,”<"这两个比较运算符以外,还有:
== 等于符号,注意是两个等号,要和=赋值区分开 ;
大于等于符号>=;
小于等于符号<=;
不等于符号 !=;
四.逻辑运算
比较运算,可以根据单个条件,输出True或False的结果。
当对一个事物的判断涉及到多个条件的时候,就需要使用逻辑运算把多个条件连接起来。
比如,我国男飞行员的身高要求是169 - 185厘米,换成逻辑表达就是“飞行员的身高必须要>=169厘米,并且,<=185厘米。
这里的“并且”就是一个逻辑运算。
- 定义:逻辑运算,是针对多个“真”、“假”命题进行判断的运算。
“并且”、“或者”和“非”是常见的三种逻辑运算。
“并且”、“或者”和“非”这三种逻辑运算。在Python中,会用逻辑运算符来表达,包括:
and(并且)
or(或者)
not(非)。
掌握了逻辑运算符的概念之后,我们来分别学习这三个运算符的运算规则。
运算规则
- and运算符表示“并且”。
意思是仅当and左右两边的布尔数均为True时,运算结果才为True。
其它情况下,运算结果都为False。
print(True and True)
print(True and False)
print(False and False)
- or运算符表示“或者”。
意思是只要当or左右两边的布尔数有一个为True时,运算结果就为True。
也就是说,只有当or左右两边的布尔数均为False时,运算结果才为False。
print(True or True)
print(True or False)
print(False or False)
- not运算符表示“非”。
与and和or不同,not运算符只会运算一个布尔数,表示对这个布尔数进行取反。
也就是说,not True 运行结果是False,not False运行结果是True。
print(not True)
print(not False)
学习了逻辑运算的规则,现在我们来学习一下具体的代码写法。
代码写法
a = True
b = False
print(a and b)
print(a or b)
print(not a)
实例中,第1行代码给变量a赋值了布尔数True(真);
第2行代码给变量b赋值了布尔数False(假);
第3行代码输出了a和b进行and逻辑运算的结果。
第4行代码输出了a和b进行or逻辑运算的结果
第5行代码输出了a进行not逻辑运算的结果。
- True 和 False是布尔数常量
True, 一个常量,“真”值。
False,一个常量,“假”值。 - 逻辑运算符
and,一种逻辑运算符号,表示“并且”。
or,一种逻辑运算符号,表示“或者”。
not,一种逻辑运算符号,表示“非”。 - 空格
and 和 or 运算符的两旁必须加空格,not 运算符后也必须加空格
当涉及多个条件时,在Python中常会将比较运算和逻辑运算混合使用。
在此时,Python会优先执行比较运算,再按优先级顺序执行多种逻辑运算。
注意,逻辑运算间的优先级not > and > or。
如果想控制代码执行的顺序,可以对希望优先执行的运算使用括号。如图,使用括号后,运算顺序将完全不同,运算结果也会不相同。
其次,即使括号的使用不影响代码执行的顺序,但也能让代码更加清晰易读,是一种提倡的代码风格。
如图,对比较运算使用括号,不影响代码执行顺序,因为Python本身优先执行比较运算。
但在此,让代码更加清晰,更易理解。
刚学习过进行比较运算,和逻辑运算的一串运算式子。
在Python有一个统一的名字——布尔表达式。
五.布尔表达式
- 定义:
无论是进行简单的比较运算,还是进行了逻辑运算,或者是混合使用。
在Python中,只要运算结果是True或False。这样的运算式,都被统一称为布尔表达式。
小总结
我们今天学习了布尔数,6个比较运算符和3个逻辑运算符。
需要对数字的大小进行比较时,使用比较运算符。对布尔数进行逻辑运算时,使用逻辑运算符。