我正在尝试制作一个将以下内容写入终端的python程序:
帧 1 -- 加载帧 2 -- 加载。帧 3 -- 加载中..帧 4 -- 加载中...帧 5 -- 加载
这一切都将是一个函数,以便它重复自己。我遇到的一个问题是我不知道如何在点数等于 3 后将点数重置为零。我当前的代码如下,任何建议都会很好。
import pickle
import time
from sys import stdout
stdout.write("Loading")
def loaddot():
stdout.write(".")
time.sleep(.5)
loaddot()
loaddot()
的尝试:
import time
from sys import stdout
def loaddot():
stdout.write("."*(dots%3 + 1))
time.sleep(.5)
dots = 0
while(True):
dots += 1
stdout.write("Loading")
loaddot()
stdout.flush()
print
我相信在Python中有更好的方法可以做到这一点。我没有那么多使用这种语言,但这来自我所知道的和我对其他语言的背景。
要做这样的事情,你真的应该使用 curses 库。有几种技巧可以让屏幕清除或退格字符,但没有一个能与诅咒的 UI 功能相提并论:
http://docs.python.org/2.7/library/curses.html
您需要清除屏幕,如果您使用的是 linux 系统,只需使用 os 库即可
import os
import time
while True:
for i in range(3):
print "Loading."<br>
time.sleep(3)<br>
os.system("clear")<br>
print "Loading.."<br>
time.sleep(3)<br>
os.system("clear")<br>
print "Loading..."<br>
time.sleep(3)<br>
os.system("clear")<br>