1
我想一次打印一行中的字符。这段代码最终要做的是每次只读一个字符(每个字符之间都有一个暂停,所以我知道它正在迭代字符),然后当它完成该行时,它会将所有字符打印在一旦。在循环中一次只打印一个字符
for line in lines:
for ch in line:
print(ch, end = ' ')
os.system("pause")
但是,如果我这样做:
for line in lines:
for ch in line:
print(ch, end = '\n') #same effect as print(ch)
os.system("pause")
它将打印一个字符用一个换行符,然后系统暂停。
为什么它在第一种情况下打印不正确,但在第二种情况下打印?
另外,我刚跑了随机测试:
print ("is", end=' ')
os.system("pause")
print("newline?")
它没有打印我的消息,直到系统暂停后。为什么暂停之前不打印“是”?似乎有print()函数的一些隐藏的工作比我不明白。任何人都有一些解释?
先生,您是一位绅士和学者。我在运行随机测试后发现有关于缓冲区的信息。感谢您的回答,我会尽快将其标记出来。 –