python语言下,如何实现控制台风格的进度显示?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python语言下,如何实现控制台风格的进度显示?相关的知识,希望对你有一定的参考价值。

用python编写控制台程序。
也就是进度百分比信息在原位不断刷新,而不产生很多行的显示。似乎用print做不到,总是不断产生信息上卷,结果打印出很多行进度百分比显示。望指点,多谢!
lqefn回答的并不对,试一试就知道了,我要求的是光标始终在同一行中显示进度百分比,而不是不断产生新的行来显示。

参考技术A import sys
import time

# Output example: [======= ] 75%
# width defines bar width
# percent defines current percentage

def progress(width, percent):
print "%s %d%%\r" % (('%%-%ds' % width) % (width * percent / 100 * '='), percent),
if percent >= 100:
print
sys.stdout.flush()

# Simulate doing something ...
for i in xrange(100):
progress(50, (i + 1))
time.sleep(0.1) # Slow it down for demo本回答被提问者采纳
参考技术B 如果LZ愿意肯动手试试,就知道lqefn的回答:
for i in range(100):
... print("\r%%%d"%i, end="")
... time.sleep(0.01)
是对的。不过他的是3.0,在2.x里变成
print "\r%%%d"%i,

就行
参考技术C for i in range(100):
... print("\r%%%d"%i, end="")
... time.sleep(0.01)

C语言中如何控制只在某一个位置打印?比如进度百分比数字的显示。

想写个程序,类似进度条的东西,用字符拼的,但是这个进度条是随着扫描到的参数变量随时变化的(可大可小),不是类似拷贝一样只能前进的单向进度条。所以需要在某一个位置重复显示,这个效果如何做呢?而且表示百分比的数字也只在一个地方重复显示刷新,这个效果如何能做到呢?

在TC里用这个gotoxy(int x, int y);自己摸索一下~~ 参考技术A 让网易看

以上是关于python语言下,如何实现控制台风格的进度显示?的主要内容,如果未能解决你的问题,请参考以下文章

C语言中如何控制只在某一个位置打印?比如进度百分比数字的显示。

Python文本进度条

requests实现文件下载, 期间显示文件信息&下载进度_python3

如何用C语言实现进度条

如何在 python 控制台中显示两个不同的输出

Python中进度条如何实现