Python3入门(二)运算符
Python语言支持以下类型的运算符:
- 算术运算符
- 比较运算符
- 赋值运算符
- 逻辑运算符
- 位运算符
- 成员运算符
- 身份运算符
- 运算符优先级
接下来带着大家一起学习下这些
一、算术运算符
| 运算符 | 描述 |
|---|---|
| + | 两个对象相加 |
| - | 表示负数或者两个数相减 |
| * | 两个数相乘或者返回一个重复若干次的字符串 |
| / | 两个数相除 |
| % | 取模,返回除法的余数 |
| ** | 幂,返回一个数的几次幂,比如10**2表示10的2次方 |
| // | 取整数,两个数相除,向下取整数,比如9//2结果为4 |
案例:
a = 2
b = 1
c = 3
# 加法 结果为:3
print(a + b)
# 减法 结果为:1
print(a - b)
# 乘法 结果为:2
print(a * b)
# 除法 结果为:2.0
print(a / b)
# 取模 结果为:0
print(a % b)
# 幂 结果为:2
print(a ** b)
# 除法取整 结果为:1
print(c // a)
二、比较运算符
| 运算符 | 描述 |
|---|---|
| == | 比较两个对象是否相等 |
| != | 比较两个对象是否不相等 |
| > | 比较一个数字是否大于另一个数字 |
| < | 比较一个数字是否小于一个数字 |
| >= | 一个数字是否大于等于另一个数字 |
| <= | 一个数字是否小于等于一个数字 |
案例
aa = 2
bb = 4
cc = 1
# 输出结果:aa不等于bb
if aa == bb:
print('aa等于bb')
else:
print('aa不等于bb')
# 输出结果:aa不等于bb
if aa != bb:
print('aa不等于bb')
else:
print('aa等于bb')
# 输出结果:aa小于bb
if aa < bb:
print('aa小于bb')
else:
print('aa大于bb')
# 输出结果:aa小于bb
if aa > bb:
print('aa大于bb')
else:
print('aa小于bb')
# 输出结果:aa小于等于bb
if aa >= bb:
print('aa大于等于bb')
else:
print('aa小于等于bb')
# 输出结果:aa小于等于bb
if aa <= bb:
print('aa小于等于bb')
else:
print('aa大于等于bb')
三、赋值运算符
| 运算符 | 描述 |
|---|---|
| = | 简单的赋值运算符,比如a = 2 |
| += | 加法赋值运算符,a += b等价于a = a + b |
| -= | 减法赋值运算符,a -= b等价于a = a - b |
| *= | 乘法赋值运算符,a = b 等价于a = a b |
| /= | 除法赋值运算符 a /= b 等价于 a = a / b |
| %= | 取模赋值运算符, a %= b 等价于 a = a % b |
| **= | 幂赋值运算符,a **= b 等价于 a = a**b |
| //= | 整除赋值运算符,a //= b等价于 a = a //b |
案例:
aaa = 2
bbb = 3
# 输出结果:5
aaa += bbb
print(aaa)
# 输出结果:15
aaa *= bbb
print(aaa)
# 输出结果:5.0
aaa /= bbb
print(aaa)
# 输出结果:2.0
aaa %= bbb
print(aaa)
# 输出结果:8.0
aaa **= bbb
print(aaa)
# 输出结果:2.0
aaa //= bbb
print(aaa)
四、位运算符
| 运算符 | 描述 |
|---|---|
| & | 按位与运算符,参与运算的两个值,如果两个相应位都为1,则该位得结果为1,否则为0 |
| | | 按位或运算符,只要对应的两个二进位有一个为1,结果位就为1 |
| ^ | 按位异或运算符,当两对应的二进位相异时,结果为1 |
| ~ | 按位取反运算符,对数据的每个二进制位取反,即把1变为0,0变成1,~x类似于-x-1 |
| << | 左移动运算符,运算数的各二进位全部左移若干位,由<<右边的数指定移动的位数,高位丢弃,低位补0 |
| >> | 右移动运算符,把>>左边的运算数的各二进制位全部右移若干位,>>右边的数指定移动的位数 |
案例:
e = 20
f = 10
# 输出结果:0
g = e & f
print(g)
# 输出结果:30
g = e | f
print(g)
# 输出结果:30
g = e ^ f
print(g)
# 输出结果:-21
g = ~e
print(g)
# 输出结果:80
g = e << 2
print(g)
# 输出结果:5
g = e >> 2
print(g)
五、逻辑运算符
| 运算符 | 逻辑表达式 | 描述 |
|---|---|---|
| and | x and y | 如果x为False,x and y返回False,否则返回y的值 |
| or | x or y | 如果x为True,返回x的值,否则返回y |
| not | not x | 如果x为True,返回False,如果为False,返回True |
案例:
h = 10
i = 20
# 输出结果:都为true
if h and i:
print("都为true")
else:
print("有不是true的")
# 输出结果:都为true,或者一个为true
if h or i:
print("都为true,或者一个为true")
else:
print("都不是true")
# 输出结果:都是true的
if not(h and i):
print("都为false,或其中一个为false")
else:
print("都是true的")
六、成员运算符
除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组
| 运算符 | 描述 |
|---|---|
| in | 如果在指定的序列中找到值就返回True,否则返回False |
| not in | 如果没有找到,返回True,否则返回False |
案例:
a = 10
b = 20
myList = [1, 2, 3, 4, 20]
# 输出结果:a不在列表里
if a in myList:
print("a在列表里")
else:
print("a不在列表里")
# 输出结果:a不在列表里
if a not in myList:
print("a不在列表里")
else:
print("a在列表里")
# 输出结果:b在列表里
if b in myList:
print('b在列表里')
else:
print('b不在列表里')
七、身份运算符
身份运算符用于比较两个对象的存储单元
| 运算符 | 描述 |
|---|---|
| is | is是判断两个标识符是不是引用自一个对象 |
| is not | is not是判断两个标识符是不是引用不同对象 |
案例:
a = 20
b = 10
c = 20
# 输出结果:不是同一个对象
if a is b:
print("a和b是同一个对象")
else:
print('不是同一个对象')
# 输出结果:a和c是同一个对象
if a is c:
print("a和c是同一个对象")
else:
print("a和c不是同一个对象")
# 输出结果:a和b不是同一个对象
if a is not b:
print("a和b不是同一个对象")
else:
print("a和b是同一个对象")
is是判断两个变量引用对象是否为同一个,==是判断引用变量的值是否相等
八、运算符优先级
| 运算符 | 描述 |
|---|---|
| ** | 指数,优先级最高 |
| ~、+、- | 按位反转、加@、减@ |
| *、/、%、// | 乘、除、取模、取整除 |
| +、- | 减法、加法 |
| >>、<< | 右移、左移 |
| & | 位'AND' |
| ^、| | 位运算符 |
| <=、<、>、>= | 比较运算符 |
| ==、!= | 等于运算符 |
| =、%=、/=、//=、-=、*=、**= | 赋值运算符 |
| is、is not | 身份运算符 |
| in、not in | 成员运算符 |
| and、or、not | 逻辑运算符 |
本文到此结束啦,如有误欢迎各位指正,也欢迎大家持续关注哦!!!!