跳至内容

Python运算符

运算符是可以用来对变量或值进行运算的特殊符号。

例如

python
print(1+2)
print(1+2)

这里,+ 就是一个运算符。

运算符类型

Python运算符共分为6类

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符
  • 特殊运算符

算术运算符

Python算术运算符是用来进行数学运算的操作符,比如 +, -, *, /

算术运算符清单

运算符操作例子
+1+1=2
-2-1=1
*1*2=2
/4/2=2
//地板除10//3=3
%取余10%3=1
**乘方4**2=16

赋值运算符

赋值运算符用于将值赋给变量

赋值运算符清单

运算符操作例子
=赋值操作a=1
+=加赋值a+=1 #a=a+1
-=减赋值a-=1 #a=a-1
*=乘赋值a*=2 #a=a*2
/=除赋值a/=2 #a=a/2
%=取余赋值a%=5 #a=a%5
**=指数赋值a**=10 #a=a**10

输入

python
a = 10
a += 10
print("a = ", a)
b = 10
b *= 2
print("b = ", b)
c = 10
c %= 3
print("c = ", c)
a = 10
a += 10
print("a = ", a)
b = 10
b *= 2
print("b = ", b)
c = 10
c %= 3
print("c = ", c)

输出

a = 20
b = 20
c = 1
a = 20
b = 20
c = 1

比较运算符

比较运算符用于比较两个变量或者值的大小,返回 TrueFalse

比较运算符清单

运算符含义例子
==等于1 == 2 False
!=不等于1 != 2 True
>大于1>2 False
<小于1<2 True
>=等于2 >= 2 True
<=等于2 <= 2 True

逻辑运算符

逻辑运算符用于检查表达式 TrueFalse

逻辑运算符清单

运算符例子含义
anda and b逻辑与
ora or b逻辑或
notnot a逻辑非

位运算符

位运算符对操作数 按二进制位 处理。

运算符含义例子
&位与01 & 10 = 00
|位或01 | 10 = 11
~位非~(00) = 11
^异或00 ^ 01 = 10
>>右移x>>2 右移两位
<<左移x<<2 左移两位

特殊运算符

Python提供了两种特殊运算符:恒等运算符成员运算符

恒等运算符

恒等运算符用来检查两个变量是否是同一变量(位于同一内存地址)

运算符含义例子
is恒等同一变量为True
is not恒不等不同变量为True

输入

python
x1 = 1
y1 = 1
print("x1 is y1: ", x1 is y1)
x2 = 'hello'
y2 = 'hello'
print("x2 is y2: ", x2 is y2)
x3 = [1,2,3]
y3 = [1,2,3]
print("x3 is y3: ", x3 is y3)
x1 = 1
y1 = 1
print("x1 is y1: ", x1 is y1)
x2 = 'hello'
y2 = 'hello'
print("x2 is y2: ", x2 is y2)
x3 = [1,2,3]
y3 = [1,2,3]
print("x3 is y3: ", x3 is y3)

输出

x1 is y1: True
x2 is y2: True
x3 is y3: False
x1 is y1: True
x2 is y2: True
x3 is y3: False

x1和y1是同一整数值(对应一个内存常量),所以他们恒等。
x2和y2是同一字符串(对应一个内存常量),所以他们也恒等。
x3和y3是list,虽然他们值相等,但是他们不是同一个变量。

成员运算符

成员运算符用于判定变量是否在序列容器中,比如 string, list, tuple, set, dictionary

例如

输入

python
x = "Hello world"
y = { a: 1, b: 2}
# 检查H是否在字符串x中
print("'H' in x: ",'H' in x)

# 检查a是否在y中
print("'a' in y: ", 'a' in y)
x = "Hello world"
y = { a: 1, b: 2}
# 检查H是否在字符串x中
print("'H' in x: ",'H' in x)

# 检查a是否在y中
print("'a' in y: ", 'a' in y)

输出

'H' in x: True
'a' in y: True
'H' in x: True
'a' in y: True