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

Non*_*one 8 python text

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

print "Hi",
print 10000 ** 10000
Run Code Online (Sandbox Code Playgroud)

打印"嗨你好"之前需要一段时间:

def sayHello():
    for i in [0] * 100000000: pass
    print "Hello"
print "Hi",
sayHello()
Run Code Online (Sandbox Code Playgroud)

ken*_*ytm 23

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

    • 在Python 3.x中,print("Hi", end="")用来实现相同的效果.
  2. 标准输出是行缓冲的.因此,"Hi"在发出新行之前不会打印.


adw*_*adw 5

您正在看到stdout缓冲的效果:禁用输出缓冲