首页 > 解决方案 > 我想将(非圆形)浮点数限制为 PYTHON 中的某个数字,

问题描述

我希望浮点数限制为例如 8。当我运行下面的代码时,它给了我 16 个浮点数。例如x=4y=3,它给出1.3333333333333333。如何减少“3”的数量。注意:我不想四舍五入,只限制“3”。

x=int(input())
y=int(input())
print(x/y)

标签: pythonpython-3.x

解决方案


你可以很容易地做到这一点,如果你

  • 将数字乘以 10 的幂
  • 将数字转换为 int 和
  • 最后除以 10 的幂

所以代码:

def limit_num(num, limit):
    num = num * 10**limit
    num = int(num)
    num /= 10**limit
    return num

number = 4/3 # 1.3333333333333333

number = limit_num(number, 5)

print(number) # 1.33333

或者在一行中:

def limit_num(num, limit):
    return (int(num * 10**limit) / 10**limit)

推荐阅读