pin_drop当前位置:知识文库 ❯ 图文
Python算术运算符
概述
算术运算符是编程中最基本的运算符,用于执行数学计算。Python提供了丰富的算术运算符,包括加、减、乘、除、取模、幂运算和整除等。本节将详细介绍每个算术运算符的用法、运算规则以及注意事项。
加减乘除
加法运算(+)
加法运算符用于两个数相加,也可用于字符串、列表的拼接:
代码示例
print(5 + 3)
print(2.5 + 1.5)
print("Hello" + " " + "World")
print([1, 2] + [3, 4])输出:
代码示例
8
4.0
Hello World
[1, 2, 3, 4]减法运算(-)
减法运算符用于两个数相减,也可用于集合的差集:
代码示例
print(10 - 3)
print(5.5 - 2.2)
print({1, 2, 3} - {2, 3, 4})输出:
代码示例
7
3.3
{1}乘法运算(*)
乘法运算符用于两个数相乘,也可用于字符串、列表的重复:
代码示例
print(4 * 5)
print(2.5 * 4)
print("Ha" * 3)
print([0] * 5)输出:
代码示例
20
10.0
HaHaHa
[0, 0, 0, 0, 0]除法运算(/)
除法运算符用于两个数相除,结果始终为浮点数:
代码示例
print(10 / 3)
print(10 / 2)
print(7 / 2)输出:
代码示例
3.3333333333333335
5.0
3.5注意:Python中的除法
/始终返回浮点数,即使两个整数能整除。
取模
取模运算符%返回除法的余数:
代码示例
print(10 % 3)
print(17 % 5)
print(10 % 2)
print(7.5 % 2)输出:
代码示例
1
2
0
1.5取模的应用
判断奇偶:
代码示例
num = 7
if num % 2 == 0:
print(f"{num}是偶数")
else:
print(f"{num}是奇数")获取个位数:
代码示例
num = 12345
print(f"个位数: {num % 10}")
print(f"十位数: {num // 10 % 10}")循环索引:
代码示例
items = ["A", "B", "C"]
for i in range(10):
print(f"索引{i} → {items[i % 3]}")幂运算
幂运算符**用于计算一个数的幂次方:
代码示例
print(2 ** 10)
print(3 ** 3)
print(4 ** 0.5)
print(2 ** -1)
print(8 ** (1/3))输出:
代码示例
1024
27
2.0
0.5
2.0幂运算的应用
计算面积:
代码示例
radius = 5
area = 3.14159 * radius ** 2
print(f"圆的面积: {area}")科学计算:
代码示例
c = 3e8
energy = 9.1e-31 * c ** 2
print(f"电子能量: {energy:.2e} J")整除
整除运算符//返回除法的整数部分(向下取整):
代码示例
print(10 // 3)
print(10 // 2)
print(7 // 2)
print(-7 // 2)
print(-7.0 // 2)输出:
代码示例
3
5
3
-4
-4.0注意:负数的整除是向下取整,
-7 // 2的结果是-4而不是-3。
整除与取模的关系
整除和取模满足关系:a = (a // b) * b + (a % b)
代码示例
a, b = 17, 5
print(f"{a} // {b} = {a // b}")
print(f"{a} % {b} = {a % b}")
print(f"验证: {a // b} * {b} + {a % b} = {(a // b) * b + (a % b)}")输出:
代码示例
17 // 5 = 3
17 % 5 = 2
验证: 3 * 5 + 2 = 17运算符表格
一元运算符
代码示例
示例1:温度转换
代码示例
celsius = 36.5
fahrenheit = celsius * 9 / 5 + 32
print(f"摄氏 {celsius}° = 华氏 {fahrenheit}°")
f = 100
c = (f - 32) * 5 / 9
print(f"华氏 {f}° = 摄氏 {c:.1f}°")示例2:时间换算
代码示例
total_seconds = 7384
hours = total_seconds // 3600
remaining = total_seconds % 3600
minutes = remaining // 60
seconds = remaining % 60
print(f"{total_seconds}秒 = {hours}小时{minutes}分{seconds}秒")示例3:数字拆分
代码示例
num = 12345
wan = num // 10000
qian = num // 1000 % 10
bai = num // 100 % 10
shi = num // 10 % 10
ge = num % 10
print(f"{num}的各位数字:")
print(f"万位: {wan}")
print(f"千位: {qian}")
print(f"百位: {bai}")
print(f"十位: {shi}")
print(f"个位: {ge}")示例4:复利计算
代码示例
principal = 10000
rate = 0.05
years = 10
amount = principal * (1 + rate) ** years
print(f"本金: {principal}元")
print(f"年利率: {rate * 100}%")
print(f"投资{years}年后: {amount:.2f}元")
print(f"收益: {amount - principal:.2f}元")注意事项
除法结果为浮点数:
/运算符始终返回浮点数,即使结果为整数。
整除向下取整:
//运算符对负数是向下取整,-7 // 2的结果是-4。
浮点数精度:浮点数运算可能存在精度问题,如
0.1 + 0.2 != 0.3,需要时使用round()或decimal模块。
除数为零:除法和取模运算中除数不能为零,否则会抛出
ZeroDivisionError。
运算顺序:算术运算符遵循数学运算优先级:
**> 正负号 >*///%>+-。
小结
本节我们学习了:
-
加减乘除:
+、-、*、/四种基本运算 -
取模:
%返回除法余数,常用于判断奇偶和循环索引 -
幂运算:
**计算幂次方,支持分数幂(如开方) -
整除:
//返回商的整数部分,注意负数向下取整 -
运算符优先级:幂运算最高,乘除高于加减
算术运算符是编程中最常用的运算符,熟练掌握它们的用法和特性是编写计算程序的基础。
练习题
练习1
编写程序,输入一个四位整数,分别输出其各位数字之和。例如输入1234,输出1+2+3+4=10。
练习2
编写程序,计算1到100所有能被3整除但不能被5整除的整数之和。
常见问题
Python中除法和整除有什么区别?
除法运算符/始终返回浮点数结果,即使两个整数能整除。而整除运算符//返回商的整数部分(向下取整),对负数也是向下取整。
为什么-7 // 2的结果是-4而不是-3?
因为Python的整除是向下取整(floor),即向负无穷方向取整。-7 / 2 = -3.5,向下取整后得到-4。
取模运算有什么实际应用场景?
取模运算常用于:判断奇偶性(num % 2)、获取数字的某一位(如个位数num % 10)、实现循环索引(i % length)、判断整除等场景。
浮点数运算为什么会存在精度问题?
因为浮点数在计算机中以二进制形式存储,某些十进制小数无法精确表示为二进制。例如0.1 + 0.2的结果不是精确的0.3。对于需要高精度计算的场景,建议使用decimal模块。
算术运算符的优先级是怎样的?
从高到低依次为:幂运算**最高,其次是正负号,然后是* / // %,最后是+ -。可以使用括号()来改变运算顺序。
本文涉及AI创作
内容由AI创作,请仔细甄别