gpt4 book ai didi

python - 使用颜色/样式格式时出现奇怪的终端输出

转载 作者:太空宇宙 更新时间:2023-11-03 21:48:06 25 4
gpt4 key购买 nike

我有代码:

import sys
for i in range(0, 20):
for j in range(0, 20):
sys.stdout.write('\x1b[1;32;40m' + ' ' + '\x1b[0m')
sys.stdout.write("\n")

它在 20x20 网格中输出 400 个白色方 block ,但在大约 180 个方 block 之后,在一些方 block 之间输出 [1;32;40m 。它并不总是在同一个地方输出。为什么会发生这种情况?如何解决?

最佳答案

可能是由终端中的一些缓冲错误引起的(我猜)。我无法重现您的问题,因此这里有一些建议。

对 sys.stdout 的输出进行缓冲。您可以尝试在每行文本后刷新输出 ~

sys.stdout.flush()

但是更好的解决方案可能是将一堆转义码添加到一个字符串中,然后将其写在一个 block 中〜

import sys

colour_line = '\x1b[1;32;40m' + (' ' * 20) + '\x1b[0m' + '\n'
for i in range(0, 20):
sys.stdout.write(colour_line)

这显然简化了代码,但这偏离了您最初的设计。

关于python - 使用颜色/样式格式时出现奇怪的终端输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52324600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com