python无法将float转换为int

win*_*d85 0 python casting

我有一点问题要理解为什么python不会将浮点数转换为int.以下是代码段.

import time

now = time.time()
print type(now)
int(now)
print type(now)
Run Code Online (Sandbox Code Playgroud)

这是我得到的结果,我无法弄清楚为什么.有任何想法吗?提前致谢

<type 'float'>
<type 'float'>
Run Code Online (Sandbox Code Playgroud)

Vol*_*ity 8

你必须now像这样重新分配:

now = int(now)
Run Code Online (Sandbox Code Playgroud)

int()转换不到位操作-它只是返回的转换,这就是为什么你需要重新分配的结果,now新的价值.

作为一般规则,函数返回一个新值,而方法则在适当的位置运行.有关函数和方法之间的区别,请参阅此问题.