【发布时间】:2019-12-03 15:50:20
【问题描述】:
在我一直在用 Python 编写的程序中,我需要能够一个一个地打印元素列表,在 n 个元素之后换行以形成一个网格。但是,每次程序重新打印网格时,您都可以看到它逐个元素地进行,这看起来相当丑陋并且让用户分心。我想知道是否有一种方法可以“暂停”控制台输出一小段时间以允许打印网格,然后显示网格,擦除以前的打印输出,以不显示它逐个打印元素。我需要这样做的原因是因为程序使用 Colorama 进行彩色输出,但列表中的不同元素需要有不同的颜色,这意味着每个元素必须一个一个地打印。
编辑(当前代码):
import time as t
from os import system as c
h = 50
w = 50
loop1 = 0
ostype = "Windows"
def cl():
if(ostype == "Linux"):
c('clear')
if(ostype == "Windows"):
c('cls')
def do():
grid = []
for x in range(0,h):
temp = []
for z in range(0,w):
temp.append("#")
grid.append(temp)
for a in range(0,h):
for b in range(0,w):
print(grid[a][b], flush=False, end="")
print()
while(loop1 == 0):
do()
t.sleep(1)
cl()
【问题讨论】: