鱼C论坛

 找回密码
 立即注册
查看: 1239|回复: 3

[已解决]《零基础入门学习Python》第005讲课后题

[复制链接]
发表于 2020-6-17 17:57:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
问题:我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?

然后我就认真思考编写了这个程序:
e = input("请输入一个数字:")
a = int(e)
b = float(e)
c = a + 0.5
d = a + 1
if b < c:
    print(a)
else:
    print(d)



然后程序无法run...为啥啊...虽然我知道这样做这道题可能有些舍近求远了,但是我还是想知道这个程序错在哪里...
最佳答案
2020-6-17 18:15:21

int 不能对小数字符串进行转化

所以导致报错


在你的代码基础上可以改成这样就好啦~:

  1. e = input("请输入一个数字:")
  2. a = float(e)
  3. b = a + 0.5
  4. if int(b) < a:
  5.     print(int(a))
  6. else:
  7.     print(int(b))
复制代码


小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-6-17 18:15:21 | 显示全部楼层    本楼为最佳答案   

int 不能对小数字符串进行转化

所以导致报错


在你的代码基础上可以改成这样就好啦~:

  1. e = input("请输入一个数字:")
  2. a = float(e)
  3. b = a + 0.5
  4. if int(b) < a:
  5.     print(int(a))
  6. else:
  7.     print(int(b))
复制代码


小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-17 19:29:26 | 显示全部楼层
本帖最后由 均昊山 于 2020-6-17 20:26 编辑

int() 函数用于将一个字符串或数字转换为整型。


class int(x, base=10)    如果是带参数base的话,12要以字符串的形式进行输入,12 为 16进制
x -- 字符串或数字。
base -- 进制数,默认十进制。

可以用 decimal函数
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-18 09:42:07 | 显示全部楼层
均昊山 发表于 2020-6-17 19:29
int() 函数用于将一个字符串或数字转换为整型。

好~等我学到这个函数~谢谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-22 02:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表