* 整除和取模运算的实际应用场景

(date: 2025-11-01)

难度: 1

时长: 10 min

这是对Python 交互式控制台 中的斜线除法的补充说明。

整除(//)应用场景示例

场景:商品打包问题

问题:某工厂生产了253个产品,每个包装盒可以装12个产品。问最多可以装满多少盒?

# 使用整除运算解决
total_products = 253
products_per_box = 12

full_boxes = total_products // products_per_box
print(f"253个产品最多可以装满{full_boxes}盒")

输出253个产品最多可以装满21盒

解释:整除运算自动向下取整,直接得到完整的包装盒数量,忽略剩余不够一盒的产品。

取模(%)应用场景示例

场景:时间转换问题

问题:一场电影时长187分钟,请问是几小时几分钟?

# 使用取模运算解决
total_minutes = 187
minutes_per_hour = 60

hours = total_minutes // minutes_per_hour  # 整除得到小时数
minutes = total_minutes % minutes_per_hour  # 取模得到剩余分钟数

print(f"187分钟等于{hours}小时{minutes}分钟")

输出187分钟等于3小时7分钟

解释:取模运算得到的是除法后的余数,在这里就是不足1小时的剩余分钟数。

综合应用场景

场景:分页显示问题

问题:博客网站有47篇文章,每页显示10篇文章,需要多少页?最后一页有几篇文章?

# 综合使用整除和取模
total_articles = 47
articles_per_page = 10

total_pages = total_articles // articles_per_page
remaining_articles = total_articles % articles_per_page

# 如果有剩余文章,需要额外一页
if remaining_articles > 0:
    total_pages += 1

print(f"总共需要{total_pages}页")
print(f"最后一页有{remaining_articles if remaining_articles > 0 else articles_per_page}篇文章")

输出

总共需要5页
最后一页有7篇文章

场景:奇偶判断

问题:判断一个数字是奇数还是偶数

number = 29

if number % 2 == 0:
    print(f"{number}是偶数")
else:
    print(f"{number}是奇数")

输出29是奇数

解释:任何数除以2的余数为0就是偶数,余数为1就是奇数。

教学提示

整除运算特点

  • 自动向下取整

  • 适用于需要"完整单位"的场景

  • 如:包装、分组、分页等

取模运算特点

  • 获取除法后的余数

  • 适用于需要"剩余部分"的场景

  • 如:时间转换、奇偶判断、循环计数等

记忆技巧

  • // 像是把东西完整地分到盒子里

  • % 像是分完后剩下的零头

  • 两者经常配合使用,一个求商,一个求余