主要用到了print中的\r,转义字符写进字符串,意义为光标返回当前行首格,配合end=''即可实现不换行打印新内容同时删除旧内容。
主要用到了print中的\r,转义字符写进字符串,意义为
光标返回当前行首格
,配合
end=''
即可实现不换行打印新内容同时删除旧内容。
Python基础 | 字符串格式化输出及print()函数介绍
样式一:
import time
for i in range(1, 101):
print("\r{:3}%".format(i), end="")
time.sleep(0.1)
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI0gTMx81dsQWZ4lmZf1GLlpXazVmcvwFciV2dsQXYtJ3bm9CX9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5iMxEDN4ITZyAjM5I2NzcTZyYzX5IzNxATMxAzLchDMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
样式二:
import time
for i in range(1, 101):
print(f'\r{"▇" * (i // 2)} {i:.0f}%', end='')
time.sleep(0.1)
样式...(自己来点创意呗)
如果我循环次数不是100怎么办?
看下图,改我框起来的地方。有时候可能进度条到99%就停下来了,因为
range(1,256)
,实际最后的
i
只有255就结束了,而除的是256,所以,应该知道怎么改的吧~
如果觉得进度条太长怎么办,继续看图
注意,因为是字符串计算,必须是字符串整数倍
我用的是
PyCharm
输出,不是自带的
IDLE
(见下图),其它的平台还没试过,感兴趣的可以去尝试尝试喔~