1、赋值运算符
赋值运算符就是 = (等号)
赋值示例:
a = 2
a,b = 2,4
2、算术运算符
- 常见的算术运算符如: + (加),-(减),*(乘),/(除),%(取余)等。
- 需注意的是:
a ** b = a b a^b ab (a的b次幂)
// 表示整除
/ 除法(结果可含小数点)
% 取余(求模)
3、关系运算符
- 常见的关系运算符如: >=、> 、== 、<、 <=、 is 、is not
- is/ is not 需注意:
- is/is not :用户对象的比较,说白了就是比较地址。查看变量的地址可以通过id()函数。
代码:
money = 20000
money1 =20000
print(age is age1)
输出结果:
Ture
注: 在编辑器中显示是为:Ture,这是因为变量age,age1编译后在一个代码块中,变量之间可以复用。而在dos窗中结果显示是False,是因为交互式具有"所见即所得"的特性,变量不在一个代码块。但是当money和money1都为20时,结果都为True,为什么?见下: - 当变量值不为整型且不在[-5,256]之间时,使用交互式编写和编译器编写所表现出的结果不一样,具体的可以通过dos窗和pycharm进行实验。原因可查:交互式中的小整数对象池和大整数对象池的概念。
- 小整数对象池:[-5,256]这些都是定义好了的,不会被垃圾回收。
- 大整数对象池:终端每执行一次,每次的大整数将重新创建,对于大整数都会重新创建。由于变量不处于一个代码,所以地址是不一样的。
- is/is not :用户对象的比较,说白了就是比较地址。查看变量的地址可以通过id()函数。
4、逻辑运算符
and | 与 |
---|---|
or | 或 |
not | 非 |
逻辑运算符得到的结果是Ture 或 False
5、位运算符
-
二进制、八进制、十六进制
-
打印二进制
a = 7 print(bin(a)) #输出为 0b0111
数字前带0b则为二进制。
-
打印十进制
b = 0b0111 print(int(b))
-
0o开头的表示八进制
-
0x开头的表示十六进制
-
-
位运算符
& | 与 |
---|---|
| | 或 |
~ | 取反 |
^ | 异或(同则为0,不同则为1) |
<< | 左移(左移n位,数值乘以 2 n 2^n 2n) |
>> | 右移(右移n位,数值除以(\\) 2 n 2^n 2n) |
6、字符串运算符
+ | 拼接符 |
---|---|
* | 倍数(如 ‘A’ * 3 = ‘AAA‘) |
in | 在 … 里面 |
not in | 没有在 … 里面 |
7、三目运算符
格式:
result = (a+b) if a<b else (b-a)
print(result)