我目前正在玩一些cmd /提示动画/图片:
import os
import time
def printFrame(timeout, count):
os.system('cls')
l=0
while True:
for k in range(0,9):
for i in range(0,9):
for j in range(0,9):
if j == k and i != 4:
print("|", end="", flush=True)
elif j !=k and i == 4:
print("-", end="", flush=True)
elif j ==k and i == 4:
print("+", end="", flush=True)
else:
print("O", end="", flush=True)
print("")
time.sleep(timeout)
os.system('cls')
l += 1
if l > count:
break
if __name__ == "__main__":
printFrame(0.08, 2)
我希望摆脱框架闪烁 - 特别是在第一行可见,我的想法是使用第二个打印线程:
def printFrame(timeout, count):
#print from example1
def printFrameTwo(timeout, count):
#print from example1 without os.system('cls')
if __name__ == "__main__":
p1 = threading.Thread(target = printFrame, args = (0.08, 2))
p2 = threading.Thread(target = printFrameTwo, args = (0.08, 2))
p1.start()
p2.start()
但效果相当令人失望 - 同步和第一线的问题仍然非常眨眼,第二个想法是使用预定义的框架' - 但它不是很有教育意义 - 这里的奖励是我可以一次打印整行,但仍然没有预期效果,第三(最有前途)的想法是只改变必要的像素' / chars in框架 - 但在这里我需要在线之间移动框架!并且curses不能在windows上工作(至少不是标准的)。你可能有一些想法如何咬它? (windows,标准库)也许如何加快' os.system(' cls')'?