Python中的算数运算符

本文介绍了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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值