Python3学习笔记(三)【运算符】
Python算术运算符
+
、-
、*
、/
、%
、**
、//
、
a = 3
b = 2
print(a + b) # 5
print(a - b) # 1
print(a * b) # 6
print(a / b) # 1.5
print(a % b) # 1
print(a ** b) # 3的2次方 = 9
print(a // b) # 取商的整数部分 = 1,如9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
Python的比较运算符
=
、!=
、>
、<
、>=
、<=
、
a = 3
b = 2
print("a == b", a == b) # False
print("a != b", a != b) # True
print("a > b", a > b) # True
print("a < b", a < b) # False
print("a >= b", a >= b) # True
print("a <= b", a <= b) # False
Python赋值运算符
=
、+=
、-=
、*=
、/=
、%=
、**=
、//=
a = 3
b = 2
a += b
print("a += b =>", a) # 5
a = 3
b = 2
a -= b
print("a -= b =>", a) # 1
a = 3
b = 2
a *= b
print("a *= b =>", a) # 6
a = 3
b = 2
a /= b
print("a /= b =>", a) # 1.5
a = 3
b = 2
a %= b
print("a %= b =>", a) # 1
a = 3
b = 2
a **= b
print("a **= b =>", a) # 9
a = 3
b = 2
a //= b
print("a //= b =>", a) # 1
Python位运算符
&
、|
、^
、~
、<<
、>>
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = a & b
print("c 的值为:", c) # 12 = 0000 1100
c = a | b
print("c 的值为:", c) # 61 = 0011 1101
c = a ^ b
print("c 的值为:", c) # 49 = 0011 0001
c = ~a
print("c 的值为:", c) # -61 = 1100 0011
c = a << 2
print("c 的值为:", c) # 240 = 1111 0000
c = a >> 2
print("c 的值为:", c) # 15 = 0000 1111
运算符 | 描述 | 实例 |
---|---|---|
& | 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 | (a & b) 输出结果 12 ,二进制解释: 0000 1100 |
| | 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 | (a | b) 输出结果 61 ,二进制解释: 0011 1101 |
^ | 按位异或运算符:当两对应的二进位相异时,结果为1 | (a ^ b) 输出结果 49 ,二进制解释: 0011 0001 |
~ | 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1 | (~a ) 输出结果 -61 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式。 |
<< | 左移动运算符:运算数的各二进位全部左移若干位,由”<<”右边的数指定移动的位数,高位丢弃,低位补0。 | a << 2 输出结果 240 ,二进制解释: 1111 0000 |
>> | 右移动运算符:把”>>”左边的运算数的各二进位全部右移若干位,”>>”右边的数指定移动的位数 | a >> 2 输出结果 15 ,二进制解释: 0000 1111 |
Python逻辑运算符
and
、or
、not
a = 10
b = 20
print(a and b) # 如果a为False,则返回False,否则返回b的值
print(a or b) # 如果a为True,返回a的值,否则返回b的计算值
print(not a) # 如果a为True,返回False,否则返回True
Python成员运算符
in
、not in
_list = [1, 2, 3, 4, 5]
a = 1
b = 0
if a in _list:
print(a, "in _list")
if b not in _list:
print(b, "not in _list")
Python身份运算符
is
、is not
is
与==
的区别,is
用于判定两个变量引用对象是否是通一个,==
用于判断引用变量的值是否相等。
a = 10
b = a
print(a is b) # True
print(a == b) # True
print(a is not b) # False
print(id(a) is id(b)) # False
b = 20
print(a == b) # False