Python基础编程(四)——运算符

本篇文章主要是对python学习时的一些总结,作为学习笔记记录。

对python中的数据类型有所了解之后,就需要知道这些数据类型都支持什么样的数据运算,不过在此之前还需要了解python中的运算符都有那些。

对于python来说,存在多种运算符,主要分为几种类型:

  • 算术运算符
  • 关系运算符
  • 赋值运算符
  • 逻辑运算符
  • 位运算符
  • 成员运算符
  • 身份运算符

算数运算符

运算符 描述
+
-
*
/
% 取模
**
// 整除
print(5 + 3)          # 加法
print(5 - 3)          # 减法
print(5 * 3)          # 乘法
print(5 / 3)          # 除法
print(5 // 3)         # 整除
print(5 % 3)          # 取余
print(5 ** 3)         # 乘方

结果为:

8
2
15
1.6666666666666667
1
2
125

比较运算符

运算符 描述
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
print(1 == 2)
print(1 != 2)
print(1 > 2)
print(1 < 2)
print(1 >= 2)
print(1 <= 2)

结果为:

False
True
False
True
False
True

赋值运算符

运算符 描述
= 赋值
+= 加法赋值
-= 减法赋值
*= 乘法赋值
/= 除法赋值
%= 取模赋值
**= 幂赋值
//= 取整除赋值
:= 海象运算符,可在表达式内部为变量赋值。Python3.8 版本新增运算符
a = 10
print(a)
a += 3
print(a)
a -= 3
print(a)
a *= 3
print(a)
a /= 3
print(a)
a **= 3
print(a)
a //= 3
print(a)
a %= 3
print(a)

结果为:

10
13
10
30
10.0
1000.0
333.0
0.0

逻辑运算符

运算符 描述
and 逻辑与
or 逻辑或
not 逻辑非
print(True and False)
print(True or False)
print(not True)

结果为:

False
True
False

位运算符

运算符 描述
& 位与
| 位或
^ 位异或
~ 位取反
<< 左移,高位丢弃,低位补0。
>> 右移
print(bin(63))
print(bin(13))
print(bin(63 & 13))
print(bin(63 | 13))
print(bin(63 ^ 13))
print(bin(~63))
print(bin(13 << 4))
print(bin(63 >> 4))

结果为:

0b111111
0b1101
0b1101
0b111111
0b110010
-0b1000000
0b11010000
0b11

成员运算符

运算符 描述
in 如果在指定的序列中找到值返回 True,否则返回 False
not in 如果在指定的序列中没有找到值返回 True,否则返回 False
a = 'hello'
print('h' in a)
print('h' not in a)

b = (1,2,3,4)
print(1 in b)
print(1 not in b)

c = (1,2,3,4)
print(1 in c)
print(1 not in c)

d = {1,2,3,4}
print(1 in d)
print(1 not in d)

e = {1:'tom',2:'jack'}
print(1 in e)
print(1 not in e)

e = {'1':'tom','2':'jack'}
print('1' in e)
print('1' not in e)

结果为:

True
False
True
False
True
False
True
False
True
False
True
False

身份运算符

身份运算符用于比较两个对象的存储单元,主要是比较运算符两端使用id()函数后的内存对象是否相同(== 只是比较两者的数值是否相同)

运算符 描述
is is 是判断两个标识符是不是引用自一个对象
is not is not 是判断两个标识符是不是引用自不同对象
a = 100
b = 100
print(id(a))
print(id(b))
print(a is b)

b = 200
print(id(a))
print(id(b))
print(a is not b)

结果为:

1523153056
1523153056
True
1523153056
1523156256
True

运算符优先级

上面提到的运算符从高到低为:

运算符 描述
** 指数 (最高优先级)
~ + - 按位翻转, 正号,负号
* / % // 乘,除,求余数和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位与
^ | 位异或,位或
<= < > >= 比较运算符
== != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not and or 逻辑运算符

你可能感兴趣的:(#,python基础,python,运算符,编程基础)