前言
什么是运算符?举个简单的例子 1 +2 = 3 。 例子中,1 和 2 被称为操作数,+ 称为运算符。
Python 支持如下运算符:
算术运算符
比较(关系)运算符
赋值运算符
逻辑运算符
位运算符
成员运算符
身份运算符
三目运算符
运算符优先级
本篇文章我们将主要对算术运算符进行介绍。
算术运算符
算术运算符就是我们常用的加减乘除的运算符,算术运算符列表如下:
算术运算符示例:
加减运算符示例
# 加减运算符
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
复制代码
乘法幂运算示例,与数学计算顺序一致
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
------------------------------------------
----------
复制代码
除法运算示例
print(10 / 2) # 除法运算返回的都是浮点型
print(6 / 2) #/: 除以
print(20 / 6) # 计算机(二进制010101)二进制的有穷性
-----------------------------------------
输出结果如下:
5.0
3.0
3.3333333333333335
复制代码
整除运算,向下取整示例,尤其需要注意
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
复制代码
取余运算,计算出模,返回除法余数
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
复制代码
商和余数,返回商和余数组成的一个元组
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 模块来解决这个问题,具体使用如下:
from decimal import Decimal #从decimal模块中导入Decimal类
print(Decimal('0.1')+Decimal('0.2')) # 0.3
--------------------------------------------------------------------
输出结果如下:
0.3
复制代码
总结
本文主要介绍了 Python 的算术运算符,Python 的算术原则与我们日常的数学原则一致,但是我们需要注意的是除法返回的都是浮点数类型,不论是否能整除,都是如此,还有就是除法取模的过程,需要留意。下一篇文章我们将介绍 Python 的比较运算符。
评论