5

java的 System.nanoTime() 似乎给了很长的时间: 1337203874231141000L 而 python time.time() 会给出类似 1337203880.462787 的东西

如何将 time.time() 的值转换为与 System.nanoTime() 匹配的值?

4

3 回答 3

6

你不能。

文档中:

此方法只能用于测量经过的时间,与系统或挂钟时间的任何其他概念无关。返回的值表示自某个固定但任意时间以来的纳秒(可能在将来,因此值可能为负数)。

于 2012-05-16T21:41:25.633 回答
0

将输出除以System.nanoTime()10^9。这是因为它以纳秒为单位,而输出time.time()以秒为单位。

于 2012-05-16T21:39:44.163 回答
0

Python文档表明时间是基于 Python 的纪元。Java 也是如此。问题是python使用float/double来表示时间,而java使用int。

我认为转换为标准格式,然后转换为目标系统会更容易,而不是尝试使用自纪元以来的秒数,就像您尝试做的那样。

于 2012-05-16T21:42:27.270 回答