“\n”不适用于 Python2 中的 "time"

"\n" not working with "time" in Python2

当我在 Python2.7 中使用此代码时:

print("-----------")
print("\nTime is: \n")
print("-----------")

我有这样的常规输出

-----------

Time is:

-----------

但是如果我使用时间,我会得到错误的输出。代码:

import time

start = time.time()

print("-----------")
print("\nTime is: ", (time.time() - start))
print("-----------")

输出:

-----------
('\nTime is: ', 0.0)
-----------

为什么会这样?

你好像用的是Python2,所以直接写:

print "\nTime is: ", (time.time() - start)

Python2中,print是一个语句所以print(,)被认为是打印tupleprint (,).

在python2中,print是一个语句,除非你启用新的打印功能:

from __future__ import print_function

所以,print("\nTime is: ", (time.time() - start))实际上是打印元组的print语句。要么使用上面的 __future__ 导入,要么去掉括号:

print "\nTime is: ", (time.time() - start)

或使用 python3,其中 print 始终是一个函数。 :)