基本上我想做与这个家伙做的相反的事情......呵呵.
我有一个程序告诉我它有多远.
for i in some_list:
#do a bunch of stuff.
print i/len(some_list)*100," percent complete"
Run Code Online (Sandbox Code Playgroud)
因此,如果len(some_list)为50,我会将最后一行打印50次.我想打印一行并不断更新该行.我知道我知道这可能是你整天都会读到的最蹩脚的问题.我只是无法弄清楚我需要在谷歌中找到答案的四个字.
更新!我试过mvds的建议哪个看起来没错.新代码
print percent_complete," \r",
Run Code Online (Sandbox Code Playgroud)
完成百分比只是一个字符串(我现在第一次抽象,我试图成为文字).现在的结果是它运行程序,直到程序结束后才打印ANYTHING,然后在一行且只有一行打印"100%完成".
如果没有回车(但是使用逗号,mvds的一半建议),它将一直打印到最后.然后打印:
0 percent complete 2 percent complete 3 percent complete 4 percent complete
Run Code Online (Sandbox Code Playgroud)
等等.所以现在新的问题是用逗号它不会打印直到程序完成.
使用回车并且没有逗号,它的行为与两者都不完全相同.
我想使用for循环在同一行中显示序列号,这就是我所做的:
for i in range(10):
sleep(1)
print(i, end=" ")
Run Code Online (Sandbox Code Playgroud)
这应该在for循环的每次迭代中依次打印数字(0、1、2,...,10),而程序将等待直到循环结束,然后立即打印所有数字。
我不明白为什么会这样,有人知道导致这种行为的原因是什么,谢谢?