day4 运算符
1. 算数运算符:
/ 除
// 整除
%求余数
**次方
2.赋值运算符:
= += *= /= %= **= //=
3.关系运算符(比较)
== != > < >= <=
返回布尔值
Q:“abc”<“abd” 返回TRUE 字符串比较规则
A: 按位比较 a-a b-b c-d 同理,列表、元组、字典、集合都可以做比较
4.逻辑运算符
and or not 返回布尔类型
非布尔类型参与逻辑运算的规律:
Q: 现象:“a"and"b” 输出b "a"or"b"输出“a”
A: “a”、"b"都代表True,会输出为得到结果最后需要判断的那个字符,and要判断到b才能得到输出结果,or只要判断出a为TRUE即可得出结果
0 空字符串 空列表表示FALSE
5.成员运算符
in not in
字典的成员运算是针对key
6.身份运算符
is is not
两个变量取值相等,is返回TRUE
Q:is 和== 的区别是什么?
A:==比较的是值是否相等,is不是比较值,而是比较身份是否相等
值相等,身份(内存地址)不一定相等
Q:集合、元组的值比较和身份比较?
A:集合是无序的 内部元素排序不影响值是否相等
元组是有序的(是序列) 内部排序影响值是否相等
补充:python是面向对象的
对象的三个特征:值、身份、类型
值:取值 身份:内存地址 (is ==判断)
判断类型的方法:isinstance(a,str) a是否为str类型
isinstance(a,(str,int,float)) a是否为三种中的一种类型
7.位运算符
&按位与:
2&3 返回值为2
因为 10&11 返回为10
|按位或(与上同理)
^按位异或
~按位取反
"<<"左移动
">>"右移动
共同点: 把数字当作二进制数进行运算