算术运算符——让计算机帮你算数
简单7用Python当你的计算器——算术运算符详解
小朋友们,你们一定用过计算器算数学题吧?Python里也有一套“计算器”——算术运算符。它们就像工具箱里的锤子、螺丝刀,每个都有不同的用途。有了它们,你就能让计算机帮你快速完成加减乘除等各种计算,还能解决生活中分东西、算零花钱等小问题!
1. 基本四则运算:加、减、乘、除
Python里的加、减、乘、除和数学课本上几乎一样:
-
加法
+:把两个数加起来。
比如:5 + 3结果是8。
生活例子:你口袋里有5元零花钱,妈妈又给了你3元,你现在有5 + 3 = 8元。 -
减法
-:从一个数里去掉另一个数。
比如:9 - 4结果是5。
生活例子:你买了9个包子,吃了4个,还剩下9 - 4 = 5个。 -
乘法
*:多个相同数相加的简便方法。
比如:2 * 6结果是12。
生活例子:班里每个同学有2支铅笔,6个同学一共有2 * 6 = 12支铅笔。 -
除法
/:把一个数平均分成几份。
比如:8 / 2结果是4.0。注意:除法总是返回小数(浮点数),即使能除尽,结果也会带.0。
生活例子:8个苹果平均分给2个小朋友,每人8 / 2 = 4.0个。因为计算机里用小数表示更精确。
为什么除法结果是小数?
Python为了让计算结果更准确,默认除法返回浮点数。如果你只想得到整数(比如分东西不能分半个),就要用下面两种特殊的除法。
2. 整数除法 // 和取余数 %:分东西的好帮手
分糖果、排队时,经常遇到“分不完”的情况。Python提供了两个专门解决这类问题的运算符:
-
整数除法(地板除)
//:只保留整数部分,丢掉余数。
比如:7 // 3结果是2。因为7除以3等于2余1,只取整数部分2。
生活例子:7块糖分给3个小朋友,每人先拿整数块,最多每人7 // 3 = 2块。 -
取余数(模运算)
%:得到整除后的余数。
比如:7 % 3结果是1。因为7除以3,余数是1。
生活例子:10块糖分给3个小朋友,每人3块,还剩10 % 3 = 1块。这个“剩下的”就是余数。
小练习:
- 9块饼干分给4个人,每人几块?剩几块?
9 // 4 = 2,9 % 4 = 1。每人2块,剩1块。
注意:整数除法 // 和取余 % 通常一起使用,比如算总人数、排队问题。
3. 幂运算 **:快速计算乘方
幂运算就是“几次方”,比如2的3次方是 2 * 2 * 2 = 8。Python用 ** 表示:
2 ** 3 结果是 8。
生活例子:
- 一个正方形边长是5厘米,面积是
5 ** 2 = 25平方厘米。 - 一个正方体的体积是
3 ** 3 = 27立方厘米(边长为3厘米)。 - 游戏里,每次攻击力翻倍,初始攻击力是3,第4次攻击后的攻击力是
3 ** 4 = 81。
注意:** 的优先级比乘除高,比如 2 * 3 ** 2 先算 3 ** 2 = 9,再算 2 * 9 = 18。
4. 运算优先级:先算谁?
和数学课一样,Python也有运算顺序规则(优先级):
- 括号
()最优先 - 幂运算
** - 乘
*、除/、整数除//、取余% - 加
+、减-
如果相同优先级,从左向右算。
例子:2 + 3 * 4 结果是 14(先乘后加)。
如果想先加,要用括号:(2 + 3) * 4 = 20。
生活例子:
- 计算总价:买3个5元的玩具和1个10元的书包,总价是
3 * 5 + 10 = 25元。 - 如果先算加法(想成3个玩具加书包的总数量?不对),加括号
3 * (5 + 10)就变成了3个(玩具+书包)的钱,那是45元,完全不一样。
5. 新手容易犯的错误
❌ 错误1:除以零
任何数除以0在数学上都没意义,Python会报错:
10 / 0 会显示 ZeroDivisionError: division by zero。
解决办法:永远不要用0做除数。
❌ 错误2:混淆整数除法和普通除法
7 / 3得到小数2.333...7 // 3得到整数2
如果你想要整数结果却用了/,可能得到带小数点的数,影响后续计算。比如分糖果时,每人7 / 3 = 2.333块不合理,应该用//。
❌ 错误3:忘记运算顺序
3 + 4 * 2 等于 11,而不是 14。很多小朋友会错算成 (3+4)*2=14,因为心里先算了加法。一定要记住先乘除后加减。
❌ 错误4:浮点数比较时的细微误差
0.1 + 0.2 的结果并不是 0.3,而是 0.30000000000000004。这是因为计算机用二进制表示小数会有微小误差。如果要做精确比较(比如金额),可以四舍五入或用其他方法。不过初学阶段暂时不用太担心,了解就好。
6. 完整示例:帮小明算零花钱和分零食
下面是一个完整的Python程序,用到了所有算术运算符,并带中文注释:
# 小明的零花钱和零食分配
total_money = 20 # 总零花钱20元
cookie_price = 3 # 每个饼干3元
candy_price = 1 # 每个糖果1元
# 先买5个饼干:总花费
cookie_cost = cookie_price * 5 # 3*5=15元
print("买5个饼干花了:", cookie_cost, "元")
# 剩下的钱买糖果
left_money = total_money - cookie_cost # 20-15=5元
candy_count = left_money // candy_price # 5//1=5个糖果
left_cent = left_money % candy_price # 5%1=0,刚好花完
print("剩余", left_money, "元,可以买", candy_count, "个糖果,还剩", left_cent, "元")
# 如果每个小朋友分2个饼干,25个饼干可以分给多少人?
cookies_total = 25 # 总共有25个饼干
kids = cookies_total // 2 # 25//2=12个小朋友,每人2块
remainder = cookies_total % 2 # 25%2=1块,剩下1块
print("25块饼干每人分2块,可以分给", kids, "个小朋友,还剩", remainder, "块")
# 幂运算:边长5厘米的正方形面积和体积
side = 5
area = side ** 2 # 5的2次方=25
volume = side ** 3 # 5的3次方=125
print("边长5厘米的正方形面积是", area, "平方厘米,体积是", volume, "立方厘米")
运行这段代码,你会得到:
买5个饼干花了: 15 元
剩余 5 元,可以买 5 个糖果,还剩 0 元
25块饼干每人分2块,可以分给 12 个小朋友,还剩 1 块
边长5厘米的正方形面积是 25 平方厘米,体积是 125 立方厘米
7. 相关知识点指引
学完算术运算符,你可以继续探索:
- 变量:像
total_money = 20这样给数据起名字,让代码更易读。 - 输入输出:用
input()让用户输入数字,print()显示结果,做出互动程序。 - 比较运算符:比如
>、<、==,可以用来判断谁多谁少。 - 字符串运算:字符串也能用
+拼接,比如"你好" + "世界"得到"你好世界",但和数学加法不同哦。 - 复杂表达式:把多个运算符组合起来,解决更高级的问题,比如计算考试总分、平均分、最大最小值等。
试试用今天学的运算符,计算你一周的零花钱总和、班级人数分座位等小问题吧!
例题精讲
在Python中,执行 `print(10 // 3)` 会输出什么?
在Python中,表达式 `2 ** 3` 的计算结果是8。
请计算表达式的值,并填入下划线处:`print(3 + 2 * 4)` 的输出结果是 ___。在Python中,执行 `print(type(7 / 2))` 会输出什么?
在Python中,模运算符 `%` 只能用于整数类型。