python print函数实现不换行行首打印

https://blog.csdn.net/lch551218/article/details/105446636

python中的print(*objects, sep=' ', end=' ', file=sys.stdout, flush=False)函数的参数说明如下:

参数说明
objects 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
sep 用来间隔多个对象,默认值是一个空格。
end 用来设定以什么结尾。默认值是换行符 ,我们可以换成其他字符串。
file 要写入的文件对象。
flush 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。

这里着重解释一下 end 和 flush 参数:

  1. end 参数默认为   这就是为什么我们每次调用 print() 函数时都会在新的一行打印。如果我们将 end设置成 ""(end=""),则多次调用print()函数都会在同一行打印;如果我们将end设置成 " "(end=" "),则每次调用print()函数不仅会在同一行打印,并且每次都会回到当前行首位打印,并且会覆盖上次打印内容,通过一个例子来说明就很好理解了:
print("aaaaaaaa",end = '
',flush = True)
print("***",end = '
',flush = True)

# 输出为:
***
  • 1
  • 2
  • 3
  • 4
  • 5

但是通过pyinstaller 打包或运行在服务器上的话 会输出如下结果:

***aaaaaaaaaaaa
原文地址:https://www.cnblogs.com/i-shu/p/13620060.html