有人能解释一下为什么下面的代码(打印乘法表)没有按预期工作?在
import time
n = int(input("Enter number of multiples: "))
k = int(input("Enter number of tables: "))
c = 1
m = 1 #multiple
while m <= n:
while c <= k:
print("%4d" % (c*m), end='')
c+=1
time.sleep(1) #slower behaviour
m+=1
c=1
print("")
奇怪的是,它不是以1秒的间隔打印单个水平元素,而是以“k”秒的间隔一次打印整个行。在
事实上,用C编写的代码也显示了相同的行为。在
^{pr2}$也就是说,它不是打印一个元素并等待一秒钟,而是以“k”秒的间隔一次性打印整个行。在
您告诉print跳过换行符,但终端输出是行缓冲的。你需要刷新数据。在
相关问题 更多 >
编程相关推荐