《笨办法学 python3》系列练习计划——3. 数字和数字计算

本文是《笨办法学 Python3》的练习题解析,涉及基础数学运算、浮点数误差及如何精确计算。通过示例解释了Python2与Python3在除法上的差异,并介绍了如何处理浮点数精度问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

是的我把第二题吃了

题目

和大多数编程语言一样 python 可以进行数学运算,本题是使用数字以及运算符号

符号运算法则
+加法
-加法
/除法
%取余
//整除
*乘法
**幂运算
<小于
>大于
<=小于等于
>=大于等于
加分要求
  1. 使用 # 在代码每行前写一个注解,说明下面代码的作用
  2. 在命令符(终端、shell)中运行 python 使用运算符把python当作计算器用
  3. .py 脚本的方法计算一些东西。
  4. 所有结果有“错”么?了解为何基础练习中没有小数。搜索“浮点数”是什么。
  5. 用浮点数重写 ex3.py ,让它的计算结果更准确。




我的答案

3.0. 基础练习 + 3.1. 加注解
# 打印一行字 “我将要计算我拥有多少鸡”
print("I will now count my chickens:")
# 打印并计算母鸡的数量
print("Hens", 25 + 30 / 6)
# 计算公鸡的数量
print("Roosters", 100 - 25 * 3 % 4)

# 打印一行字 “现在我要计算鸡蛋的数量了”
print("Now I will count the eggs:")
# 计算鸡蛋的数量
print(3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6)

# 判断 3+2 是否小于 5-7
print("Is it true that 3 + 2 < 5 - 7?")
print(3 + 2 < 5 - 7)

# 加法、减法运算
print("What is 3 + 2?", 3 + 2)
print("What is 5 - 7?", 5 - 7)

# 作者卖萌
print("Oh, that's why it's False")

# 判断大小
print("Is it greater?", 5 > -2)
print("Is it greater or equal?", 5 >= -2)
print("Is it less or equal?", 5 <= -2)

这里写图片描述
黄色部分是和 python2 版结果不同的地方,原因见加分4题的说明。

3.3. 计算下载需要的时间
print("文件大小是1G,下载带宽是4M下水管,计算下载用几分钟:")
print(1024000 / ((4 * 1024) / 8) / 60)

(4 * 1024):4M 的准确带宽 = 4096 Kb/s。
/ 8:换算带宽 Kb/s 到 KB/s
1G = 1024000 KB
这里写图片描述
应该是无限333循环的,但小数最后一位不太对。why?请看3.4

3.4. python 的计算错误和浮点数
  • 浮点数,简单说就是有小数部分的数例如 3.0。
  • python2 在处理除法运算时整数相除只能保留整数部分,若想保留小数部分需要使用浮点数相除。python3 则可以正确处理。
  • 目前了解的是所有常见的编程语言在十进制浮点数运算时都会遇到不准确的问题,python会尽力找一种精确的结果来显示,不过好在我们有其他办法获得更精确的十进制浮点数。

    3.4.1. 如何精确 python 浮点数

    python默认的浮点数是17位,我们通常用不到这么多,这样可以使用python内置函数 round() 或 格式化字符两种方式来精确小数位。而如果需要更多位数则可以考虑用 decimal 模块




返回目录

《笨办法学 python3》系列练习计划——目录

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值