1 比较运算符
1.1 分类
1.2 实战练习
1.2.1 当b1= True,num=1 时,那么b1==num的结果是?
答: True
解析: 布尔值在进行比较运算时,会把布尔值转换成对应的数字,True会变成1,False会变成0
1.2.2 当str=“”,b1=False,那么str==b1的结果是?
答: False
解析: 只有在bool(空串)时得到的结果才是False,没使用时就是正常的比较
2 赋值运算符
2.1 分类
3 逻辑运算符
3.1 分类
3.2 实战练习
3.2.1 print(True and False or True and not False)的结果是?
答: True
解析: 优先级别从高到低: not>and>or
第一步: True and False or True and True
第二步: False or True
第三步: 打印True
3.2.2 print(1 + 1 > 1 + 2 and 3 + 2 < 3 - 1 or 5 and not True)的结果是?
答: False
解析: 优先级别从高到低**:算术>比较>逻辑**
第一步: 2>3 and 5<2 or 5 and not True
第二步: False and False or 5 and not True
第三步: False and False or 5 and False (提示:5是非0整数)
第四步: False or False
第五步: False
3.3 总结
3.2.1 逻辑运算符中需要熟记的几条结论
1 逻辑运算符的结果是布尔值,只存在True或False,对于变量1 and 变量2这种情况,只需要记住非0数字是True,数字0为False和空串为False,非空串字符串为True这两条规律就行
3.3.2 优先级别
对于不同运算符而言, 优先级别从高到低:算术>比较>逻辑
对于逻辑运算符而言,优先级别从高到低: not>and>or
4 成员运算符
4.1 分类
4.2 实战练习
4.2.1 person=“张三”,那么print(person in “张三 李四 王五 赵六”)的结果是多少?
答: True
4.2.2 num1=123456,那么print(1 in num1)的结果是多少?
答: 报错,提示 argument of type ‘int’ is not iterable(int类型的参数不可迭代)
4.2.3 b1=True,那么print(True in b1)的结果是多少?
答:报错,提示argument of type ‘bool’ is not iterable(bool类型的参数不可以迭代)