有没有办法防止 python 命令行上的自动换行?

Is there a way to prevent automatic newline on python command line?

我正在 python 中制作一个命令行游戏引擎。但是,当我尝试打印命令时,它会换行并创建一个抖动帧。

添加 end 属性使我的计算机陷入困境并几乎使 shell 崩溃。骗子使用 sys.stdout.write('') newline sys.stdout.flushprint'',print('',end='')。全部陷入 shell 并崩溃。 print('') 并没有陷入困境,这很奇怪。

#this is enough code to demonstrate the problem
while true:
    print('                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         =                                                                              ===                                                                            =====                                                                          =======                                                                        =========                                                                      ===========                                                                    =============    YYYYYYYYYYY                                                 ================================================================================')
#crash issue
import sys
while True:
    sys.stdout.write('mooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo')
    sys.stdout.flush()

我希望屏幕会填满,但屏幕会上下摇晃。

我不确定我是否正确理解了你的问题,但我想你不想在每次调用 print() 函数时打印一个新行。

如果是这样,打印函数有一个可选参数 end,默认设置为 \n(如果没有另外指定,则创建一个新行)。如果你不希望这种情况发生,你可以简单地使用打印功能:

print(your_argument, end=“”)      

your_argument 替换为您想要打印的任何内容。