Python:删除除法小数

Arc*_*ran 25 python decimal division

我已经制作了一个程序来划分数字,然后返回数字,但问题是,当它返回数字时,它有一个像这样的小数:

2.0
Run Code Online (Sandbox Code Playgroud)

但我希望它能给我:

2
Run Code Online (Sandbox Code Playgroud)

所以我还能这样做吗?

提前致谢!

Ter*_*ryA 48

你可以调用int()最终结果:

>>> int(2.0)
2
Run Code Online (Sandbox Code Playgroud)

  • @TerryA在`int(1.9999999999999999999)`的情况下它不起作用,我怎样才能删除小数? (5认同)
  • ValueError:int()的基数为10的无效文字:'68 .0' (2认同)
  • @Kyrie你可以做`int(float('68 .0'))` (2认同)
  • @熊`math.floor(1.9999999999999999999)` (2认同)

Inb*_*ose 27

当一个数字作为小数时,它通常是float在Python中.

如果要删除小数并保持整数(int).您可以int()像这样调用方法...

>>> int(2.0)
2
Run Code Online (Sandbox Code Playgroud)

然而,int几轮下来所以......

>>> int(2.9)
2
Run Code Online (Sandbox Code Playgroud)

如果要舍入到最接近的整数,可以使用round:

>>> round(2.9)
3.0
>>> round(2.4)
2.0
Run Code Online (Sandbox Code Playgroud)

然后呼吁int():

>>> int(round(2.9))
3
>>> int(round(2.4))
2
Run Code Online (Sandbox Code Playgroud)