前言
什么是运算符?
举个简单的例子 1 2 = 3 。 例子中,1 和 2 被称为操作数, 称为运算符。
Python支持如下运算符:
- 算术运算符
- 比较(关系)运算符
- 赋值运算符
- 逻辑运算符
- 位运算符
- 成员运算符
- 身份运算符
- 三目运算符
- 运算符优先级
本篇文章我们将主要对算术运算符进行介绍。
算术运算符
算术运算符就是我们常用的加减乘除的运算符,算术运算符列表如下:
运算符 | 描述 |
---|---|
加 | |
- | 减 |
* | 乘 |
/ | 除 |
% | 返回除法的余数 |
** | 幂运算 |
// | 取整除 - 返回商的整数部分(向下取整) |
算术运算符示例:
加减运算符示例
代码语言:python代码运行次数:0复制# 加减运算符
print(1 2)
print(5 - 4)
print(1 0.5) #1.5 返回类型为float
print(3 - 2.0) #1.0,只要参与运算的有浮点数,返回类型为float
-------------------------------------------------------
输出结果如下:
3
1
1.5
1.0
乘法幂运算示例,与数学计算顺序一致
代码语言:python代码运行次数:0复制print(3 * 3)
print(2 ** 4)
print(2.5 * 3)
print(50 - 5 * 6) # 先算乘法,再算减法
print((50 - 5 * 6) / 4) # 有括号,括号优先
print(10 - 2 * 3) # 先算乘法,在计算减法,计算顺序一样
# *跟字符串做搭配
print('------------------------------------------')
print('-' * 10) # 打印10个 -
-------------------------------------------------
输出结果如下:
9
16
7.5
20
5.0
4
------------------------------------------
----------
除法运算示例
代码语言:python代码运行次数:0复制print(10 / 2) # 除法运算返回的都是浮点型
print(6 / 2) #/: 除以
print(20 / 6) # 计算机(二进制010101)二进制的有穷性
-----------------------------------------
输出结果如下:
5.0
3.0
3.3333333333333335
整除运算,向下取整示例,尤其需要注意
代码语言:python代码运行次数:0复制print(11 // 4) # 整除,向下取整,比实际结果要小的整数,输出结果:2
print(9 // 2) # 4
print(11 // -3) # 输出-4,和上代码一样,向下取整,-4比-3小,故输出-4
print(10 // 3) #//:整除 向下取整 3.6666666666666665 取3
print(-11 / 3)
print(-11 // 3) #-->向下取整
--------------------------------------
输出结果如下:
2
4
-4
3
-3.6666666666666665
-4
取余运算,计算出模,返回除法余数
代码语言:python代码运行次数:0复制print(10 % 3) # %:模
print(10 % 3) #%:模,取整10//3=3余1 3*3=9 10-9=1
print(-11 % 3) # -11//3=-4 -4*3=-12 -11-(-12)=1
---------------------------------------
输出结果如下;
1
1
1
商和余数,返回商和余数组成的一个元组
代码语言:python代码运行次数:0复制x = 11
y = 3
print(divmod(x,y)) #divmod(x,y)-->(x//y,x%y)-->(商,余数)
print(type(divmod(x, y)))
------------------------------
输出结果如下:
(3, 2)
<class 'tuple'>
常见问题
有的时候我们会遇到这样的问题,计算0.1 0.2的时候,我们得到的结果是0.30000000000000004而不是0.3,出现这种问题的原因是计算机转换为二进制,结果以十进制呈现,计算时出现的精确误差,那我们要怎么去解决这个问题呢?Python提供了内置的decimal模块来解决这个问题,具体使用如下:
代码语言:python代码运行次数:0复制from decimal import Decimal #从decimal模块中导入Decimal类
print(Decimal('0.1') Decimal('0.2')) # 0.3
--------------------------------------------------------------------
输出结果如下:
0.3
总结
本文主要介绍了Python的算术运算符,Python的算术原则与我们日常的数学原则一致,但是我们需要注意的是除法返回的都是浮点数类型,不论是否能整除,都是如此,还有就是除法取模的过程,需要留意。下一篇文章我们将介绍Python的比较运算符。