a=123.45324
是否有一个仅返回123
的函数?
答案 0 :(得分:25)
int
将始终截断为零:
>>> a = 123.456
>>> int(a)
123
>>> a = 0.9999
>>> int(a)
0
>>> int(-1.5)
-1
int
和math.floor
之间的区别在于math.floor
将数字作为浮点数返回,并且不会截断为零。
答案 1 :(得分:3)
Python 2.x:
import math
int( math.floor( a ) )
N.B。由于处理花车的复杂原因,int
演员是安全的。
Python 3.x:
import math
math.floor( a )
答案 2 :(得分:3)
您可以使用math.trunc()
函数:
a=10.2345
print(math.trunc(a))
答案 3 :(得分:2)
a = 123.45324
int(a)
答案 4 :(得分:0)
如果要同时使用小数部分和非小数部分:
def split_at_decimal(num):
integer, decimal = (int(i) for i in str(num).split("."))
return integer, decimal
然后:
>>> split_at_decimal(num=5.55)
(5, 55)