在循环的每次迭代中更新球的位置

2024-03-29 15:02:05 发布

您现在位置:Python中文网/ 问答频道 /正文

首先,我为自己是一个编程新手而道歉。 我的想法是移动球(o)直到轨迹结束,这样球应该在每次迭代中更新它的位置,但不是为每个位置打印新行,而是在一行中,这样我就可以看到球沿着轨迹移动。这是我的密码

track=['o','.','.','.','.','.','.','.']
blank='.'
for i in range(1,len(track)):
    track[i]='o'
    track[i-1]=blank
    print(''.join(track))

Tags: in密码forlen轨迹编程rangetrack
2条回答

只需更改最后一行:

print(''.join(track), end='\r')

可以使用控制字符\r返回到行的开头。并将行尾设置为空,这样就不会跳到新行。因此,每次打印时都会覆盖数据

import time
track=['o','.','.','.','.','.','.','.']
blank='.'
for i in range(1,len(track)):
    track[i]='o'
    track[i-1]=blank
    print(*track, sep='', end='')
    time.sleep(0.5)
    print("\r", end='')

相关问题 更多 >