我一直在尝试将旋转光标作为我正在开发的游戏的一部分
t=1
while t<100:
for i in ["/","-","|","\\","|"]:
print "%s\r" % i
sys.stdout.flush()
t=t+1
这不能作为更大代码的一部分工作,而即使没有它也可以独立工作sys.stdout.flush()
这是怎么回事?我在 Windows 环境中使用 Python 2.7 和 Cygwin。
我一直在尝试将旋转光标作为我正在开发的游戏的一部分
t=1
while t<100:
for i in ["/","-","|","\\","|"]:
print "%s\r" % i
sys.stdout.flush()
t=t+1
这不能作为更大代码的一部分工作,而即使没有它也可以独立工作sys.stdout.flush()
这是怎么回事?我在 Windows 环境中使用 Python 2.7 和 Cygwin。
print
写入所需文本后向标准输出写入换行符。改为sys.stdout.write()
:
while t<100:
for i in ["/","-","|","\\","|"]:
sys.stdout.write("%s\r" % i)
sys.stdout.flush()
t=t+1
您可以尝试使用https://code.google.com/p/python-progressbar/(pip安装进度条)。它支持多种条形样式。对于简单的旋转光标,请尝试:
pbar = ProgressBar(widgets=['Working: ', AnimatedMarker()])
for i in pbar((i for i in range(50))):
time.sleep(.08)
更多示例:https ://code.google.com/p/python-progressbar/source/browse/examples.py