Python中的算数运算符

1. 算数运算符的介绍

算数运算符是运算符的一种,也称为数学运算符,是完成基本的算术运算使用的符号,用来处理四则运算。

运算符 描述 实例
+ 10 + 20 = 30
- 10 - 20 = -10
* 10 * 20 = 200
/ 10 / 20 = 0.5
// 取整除 返回除法的整数部分(商) 9 // 2 输出结果 4
% 取余数 返回除法的余数 9 % 2 = 1
** 幂运算 又称次方、乘方,2 ** 3 = 8

1) 拼接字符串

当+用于数字时表示加法,但是当+用于字符串时,它还有拼接字符串(将两个字符串连接为一个)的作用,请看代码:

name = "小明"
occupation = "学生"
info = "我的名字叫" + name + ",职业是" + occupation
print(info)
# 输出结果为 我的名字叫小明,职业是学生

2) 重复字符串

在 Python 中,* 运算符除了可以用作乘法运算,还可以用来重复字符串,将n个同样的字符串连接起来。

str1 = "对不起!"
print(str1 * 5)
# 输出结果为  对不起!对不起!对不起!对不起!对不起!

3) 除法 和 取整除 运算符的比较

# 整数不能除尽
print("23/5 =", 23/5)  # 23/5 = 4.6
print("23//5 =", 23//5)  # 23//5 = 4
print("23.0//5 =", 23.0//5)  # 23.0//5 = 4.0
print("-------------------")
# 整数能除尽
print("25/5 =", 25/5)  # 25/5 = 5.0
print("25//5 =", 25//5)  # 25//5 = 5
print("25.0//5 =", 25.0//5)  # 25.0//5 = 5.0
print("-------------------")
# 小数除法
print("12.4/3.5 =", 12.4/3.5)  # 12.4/3.5 = 3.542857142857143
print("12.4//3.5 =", 12.4//3.5)  # 12.4//3.5 = 3.0

从运行结果可以发现:

  • / 的计算结果总是小数,不管是否能除尽,也不管参与运算的是整数还是小数。
  • 当有小数参与运算时,// 结果才是小数,否则就是整数。

4) 求余运算符的测试

print("-----整数求余-----")
print(15 % 6)  # 3
print(-15 % 6)  # 3
print(15 % -6)  # -3
print(-15 % -6)  # -3
print("-----小数求余-----")
print(7.7 % 2.2)  # 1.0999999999999996
print(-7.7 % 2.2)  # 1.1000000000000005
print(7.7 % -2.2)  # 1.1000000000000005
print(-7.7 % -2.2)  # 1.0999999999999996
print("---整数和小数运算---")
print(23.5 % 6)  # 5.5
print(23 % 6.5)  # 3.5
print(23.5 % -6)  # -0.5
print(-23 % 6.5)  # 3.0
print(-23 % -6.5)  # -3.5

仔细观察,可以发现两点:

  • 只有当第二个数字是负数时,求余的结果才是负数。换句话说,求余结果的正负和第一个数字没有关系,只由第二个数字决定。
  • %两边的数字都是整数时,求余的结果也是整数;但是只要有一个数字是小数,求余的结果就是小数。

5) 幂运算符的开方用法

由于开方是次方的逆运算,所以也可以使用 ** 运算符间接地实现开方运算。

print('81**(1/4) =', 81**(1/4))  # 81**(1/4) = 3.0
print('32**(1/5) =', 32**(1/5))  # 32**(1/5) = 2.0

2. 算数运算符的优先级

和数学中的运算符的优先级一致,在 Python 中进行数学计算时,同样也是:

  • 先乘除后加减

  • 同级运算符是从左至右计算

  • 可以使用 () 调整计算的优先级

  • 以下表格的算数优先级由高到最低顺序排列

运算符 描述
** 幂 (最高优先级)
*、/、%、// 乘、除、取余数、取整除
+、- 加法、减法
    例如:
    2 + 3 * 5 = 17
    (2 + 3) * 5 = 25
    2 * 3 + 5 = 11
    2 * (3 + 5) = 16

posted @ 2020-07-29 12:11  小名叫小明  阅读(657)  评论(0编辑  收藏  举报