基本运算符
and,or,not:与、或、非
is,is not:判断是否为同一个对象
~:按位翻转
**:幂运算符
|、^、&:按位或、按位异或、按位与
<<、>>:移位
>>> a = 0b11011 >>> b = 0b11100 >>> a 27 >>> b 28 >>> c = a >>> a = a|b >>> a 31 >>> bin(a) '0b11111'符合赋值运算符
没有a ++,a –可以a += 1,a -=1运算符优先级
复杂的表达式一定要使用小括号组织浮点数,称为 float
类型转换和四舍五入
类似于int(),也可以使用float()将其他类型转化成浮点数
整数和浮点数运算时,结果转为浮点数。
round(value)可以返回四舍五入的值。
增强型赋值运算符 运算符+、-、*、/、//、**、%和赋值符=结合可以构成增强型赋值运算符。
>>> b =5 >>> b = b +1 >>> b 6 >>> c = 5 >>> c +=1 >>> c 6 >>>字符串驻留
仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串驻留池中。python支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线(_)、字母和数字)会启动字符串驻留机制。 >>> a = "abd_33" >>> b = "abd_33" >>> c = "dd#" >>> d = "dd#" >>> a is b True >>> c is d False >>> 原因: a和b符合标识符规则的字符串(仅包含下划线(_)、字母和数字),所以会启动字符串驻留机制,所以为True c和d不符合识符规则的字符串(仅包含下划线(_)、字母和数字),所以不会启动字符串驻留机制,所以为False字符串比较
”is“比较两个对象id是否相同”==“比较的是两个对象的value是否相同