有几种解决方案可以在同一行和第一行打印,如下所示。
在python 2中,
print "\r Running... xxx",
在Python 3中,
print("\r Running... xxx", end="")
我无法找到同时覆盖python 2和3的单一打印解决方案。我必须使用sys.stdout.write
吗?
答案 0 :(得分:16)
使用from __future__ import print_function
并在Python 2和Python 3中使用print()
函数:
from __future__ import print_function
print("\r Running... xxx", end="") # works across both major versions
请参阅print()
function documentation in Python 2:
注意:此功能通常不作为内置功能提供,因为名称print被识别为print语句。要禁用该语句并使用
print()
函数,请在模块顶部使用以后的语句:from __future__ import print_function
{2.6}中添加了print()
函数。
答案 1 :(得分:7)
使用
from __future__ import print_function
在Python 2中并在Python 2中使用print作为函数
print("\r Running... xxx", end="")