鱼C论坛

 找回密码
 立即注册
查看: 748|回复: 12

[已解决]【python】萌新求助,int()BIT怎么变成四舍五入

[复制链接]
发表于 2020-4-24 11:03:02 | 显示全部楼层 |阅读模式

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

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

x
number = input()
number = float(number)
if (number - int(number))>=0.5:
    number = int(number) + 1
    print(number)
else:
    number = int(number)
    print(number)
int = number

大佬们,这是我写的程序。做的是第五课第三题【3. 我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?】

我已经知道小甲鱼的答案了,想问问我这种有啥问题?我想把int()定义成一个四舍五入的函数,但是经过这个程序以后int()函数用不了了。。。想问问怎么才能自己这么改一个函数的功能?
最佳答案
2020-4-24 11:08:23
def Int(x):
    k = int(x)
    temp = x - k
    if temp >= 0.5:
        return k + 1
    return k 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-24 11:04:14 | 显示全部楼层
本帖最后由 永恒的蓝色梦想 于 2020-4-24 11:06 编辑
lambda x:int(x) if x%1<0.5 else int(x+1)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 11:05:00 | 显示全部楼层
不知道我表达的大家看懂了没有
就是本来int()函数是舍去小数,然后我想通过这个小程序段把int()变成四舍五入的。。。但我不会编
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 11:05:04 | 显示全部楼层
那你就换个名字,比如rounding_int()或者Nint()等等
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 11:05:52 | 显示全部楼层
URSplendid 发表于 2020-4-24 11:05
不知道我表达的大家看懂了没有
就是本来int()函数是舍去小数,然后我想 ...

为啥最后要写一个int = number呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 11:06:11 | 显示全部楼层
URSplendid 发表于 2020-4-24 11:05
不知道我表达的大家看懂了没有
就是本来int()函数是舍去小数,然后我想 ...

你是想把它变成一个函数?如果你定义的函数和python自带的一样,可能会出现奇怪的bug,以后学到魔法方法你就知道怎么解决了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 11:07:52 | 显示全部楼层
老八秘制 发表于 2020-4-24 11:06
你是想把它变成一个函数?如果你定义的函数和python自带的一样,可能会出现奇怪的bug,以后学到魔法方法 ...

只要写的完整就不会有bug
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 11:08:23 | 显示全部楼层    本楼为最佳答案   
def Int(x):
    k = int(x)
    temp = x - k
    if temp >= 0.5:
        return k + 1
    return k 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-4-24 11:12:52 | 显示全部楼层
老八秘制 发表于 2020-4-24 11:06
你是想把它变成一个函数?如果你定义的函数和python自带的一样,可能会出现奇怪的bug,以后学到魔法方法 ...

对,我写的是一个函数,就像int()可以去掉小数,变成整数
我想用我变得这段程序定义一个函数,可以实现把浮点数四舍五入的那种,然后以后我自己就能像库里面有的BIT一样调用。。。。
我看小甲鱼的题目好像不是这个意思,但是我现在想到了这个问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 11:15:04 | 显示全部楼层
qiuyouzhi 发表于 2020-4-24 11:05
为啥最后要写一个int = number呢?

我是想把int()重新定义成一种四舍五入的BIT。。。。
就这段程序我想写的是一个函数,就像int()可以去掉小数,变成整数
我想用我变得这段程序定义一个函数,可以实现把浮点数四舍五入的那种,然后以后我自己就能像库里面有的BIT一样调用。。。。
我看小甲鱼的题目好像不是这个意思,但是我现在想到了这个问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 11:17:48 | 显示全部楼层
URSplendid 发表于 2020-4-24 11:15
我是想把int()重新定义成一种四舍五入的BIT。。。。
就这段程序我想写的是一个函数,就像int()可以 ...

1,是BIF,不是BIT。
2,Python内置了一个round。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 11:21:06 | 显示全部楼层

谢谢大佬!解决了我的疑问!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 11:24:40 | 显示全部楼层
qiuyouzhi 发表于 2020-4-24 11:17
1,是BIF,不是BIT。
2,Python内置了一个round。

对对BIT。。。
原来有这样的函数,还没学到,我刚试了一下round()
谢啦!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-26 20:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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