我想在同一行上使用计时器打印两个字符串。以下是代码:
import time
print "hello",
time.sleep(2)
print "world"
但是看起来程序会等待两秒钟,然后打印两个字符串。
我想在同一行上使用计时器打印两个字符串。以下是代码:
import time
print "hello",
time.sleep(2)
print "world"
print()
支持关键字参数flush
(参见文档):print('hello', flush=True)
如果您使用的是早期版本的 Python,则可以按照以下方式强制刷新:
import sys
sys.stdout.flush()
在Python 2.7中,您可以使用来自future包的print_function。
from __future__ import print_function
from time import sleep
print("hello, ", end="")
sleep(2)
print("world!")
但正如您所说,它将等待2秒钟然后打印两个字符串。根据Gui Rava的回答,您可以刷新标准输出,这里是一个示例,应该可以帮助您朝着正确的方向前进:
import time
import sys
def _print(string):
sys.stdout.write(string)
sys.stdout.flush()
_print('hello ')
time.sleep(2)
_print('world')
import sys; sys.stdout.flush()
)。 - jonrsharpe