第5课 布尔表达式

一、布尔类型(bool)

1、布尔类型与1/0不是一回事

  布尔类型有两个值,True和False

2、布尔表达式:

  1)关系运算符:>,<,==,!=,>=,<=

  2)注意事项:== 指两边关系等价; = 赋值; 不等于的!是英文的

3、数值的比较,比较值的大小。

>>> type(3 > 5)
<class 'bool'>
>>> 3 > 5
False
>>> 5 > 3
True
>>> 2 != 6
True
>>> 3 <> 8 # python中,不等于不能这样写
SyntaxError: invalid syntax

4、字符串的比较

  1)不是比较字符串的长度(len()):a---97,A---65

  2)比较ASCII值的大小(十进制):

  3)从第一个元素依次对比,跟元素的个数没有关系

>>> 'acb' > 'abc'  # 从第一个元素依次类推
True
>>> 'z' > 'asdfghjkl'
True

  4)== 比较的是值的大小

>>> 'abc' == 'abc'
True

5、in 与not in:在/不在== a in b----a元素是否是b序列的一个元素,如果在则为True,否则为False。

>>> str1 = 'asdfzzyyxx'
>>> 'yy' in str1
True
>>> 'k' not in str1
True

二、条件组合--逻辑关系

1、逻辑与:and

  1)and--逻辑与:a and b,只有and两边的条件都为True,则结果为True,否则结果为False。

  2)如果a == True  b要进行判断;只有当a和b同时为True时,结果才为True。

  3)如果a == False  则b不需要判断

>>> (3 > 0) and (0 > -1)
True
True
>>> True and True
True
>>> True and False
False
>>> (3 > 0) and (3 > 5)
False

 2、逻辑或:or--- a or b   or两边只要有一边为True,则结果为True;如果两边都为False,则结果为False。

  1)如果a == True,则b不需要再判断

  2)如果a == False,则b要判断:如果b == True,则结果为True;如果b == False,则结果为False。

>>> 3 < 5 or 3 > 8
True
>>> 3 > 8 or 3 < 1
False

3、不/非:not      not True == False; not False == True

>>> not (3 > 8)
True
>>> not 0 > -1
False

4、优先级:not > and > or     为了使用方便,建议使用小括号。只要能清楚表达内容即可,并不是全部都要用小括号。

>>> 3 > 1 and not 2 > 1 or 5 > 4
True
>>> (3 > 1) and not (2 > 1) or (5 > 4)
True
>>> 3 > 1 or (2 != -2) and 2 < 3
True

 

posted @ 2018-11-22 06:56  风吹麦浪听涛声  阅读(1025)  评论(0编辑  收藏  举报