打印后的Python尾部逗号执行下一条指令

问题描述

  1. 在Python 2.x中,一个尾部,一个print语句防止被发射一个新行。

    • 在Python 3.x中,使用print("Hi", end="")可达到相同的效果
    • 标准输出是行缓冲的。因此,"Hi"不会在发出新行之前进行打印。

解决方法

如果在打印语句的末尾添加逗号,则首先执行下一个语句。为什么是这样?例如,这10000 ** 10000在打印之前执行"Hi "

print "Hi",print 10000 ** 10000

这需要一段时间才能打印“嗨,你好”:

def sayHello():
    for i in [0] * 100000000: pass
    print "Hello"
print "Hi",sayHello()