for index in range(0, len(order_of_fruits)):
maze[prevY][prevX] = ' '
curr = order_of_fruits[index]
maze[curr[1]][curr[0]] = 'P'
prevX = curr[0]
prevY = curr[1]
result_maze = ""
for i in range(len(maze)):
for j in range(len(maze[0])):
result_maze = result_maze + maze[i][j]
result_maze = result_maze + '\n'
animation.append(result_maze)
#animate
for index in range(0, len(animation)):
time.sleep(0.2)
sys.stdout.write("\r" + str(animation[index]))
sys.stdout.flush()
嗨,我的问题是我有一个二维数组,其条件将更新。然后我将每个更新的数组转换为字符串,并将每个字符串附加到用于在控制台中打印的列表。现在我想要打印已经转换为字符串的迷宫的变化条件。我使用了" \ r"和冲洗但它不起作用。我想这可能是因为我有" \ n"在我的每一个字符串中。那么有什么方法可以在控制台上打印迷宫系列吗?所以结果看起来只有一个迷宫出现在控制台上,其条件将每0.2更新一次? 谢谢!
答案 0 :(得分:0)
" \ R"也许放在最后。
import time
for index in range(0, len(animation)):
sys.stdout.write(str(animation[index]) + "\r")
sys.stdout.flush()
time.sleep(0.2)
答案 1 :(得分:0)
您可以考虑使用curses模块。此程序更新屏幕,等待0.2秒,然后再次更新屏幕:
from curses import wrapper
import time
def main(stdscr):
stdscr.clear()
for i in range(5):
for y in range(5):
for x in range(5):
stdscr.addstr(y, x, chr(ord('1')+i))
stdscr.refresh()
time.sleep(0.2)
stdscr.getkey()
wrapper(main)