欢迎访问宙启技术站
智能推送

使用print_formatted_text()在终端中输出动态加载进度条

发布时间:2023-12-29 15:18:17

可以使用progress模块来创建动态加载进度条,并使用print_formatted_text()在终端中进行输出。下面是一个使用例子:

from time import sleep
from prompt_toolkit import print_formatted_text
from prompt_toolkit.formatted_text import HTML
from prompt_toolkit.output.color_depth import ColorDepth
from prompt_toolkit.shortcuts.progress_bar import ProgressBar

# 创建进度条对象
progress = ProgressBar(color_depth=ColorDepth.TRUE_COLOR)

# 设置进度条样式
progress.style = 'class:progress-bar'

# 设置进度条长度
progress.start(max_value=100)

# 模拟进度更新
for i in range(101):
    # 更新进度
    progress.update(i)
    # 输出进度条
    print_formatted_text(HTML('<u>Progress:</u> {0}%'.format(i)))
    # 等待一段时间
    sleep(0.1)

# 结束进度条
progress.stop()

运行上述代码,你会看到在终端中输出一个动态加载的进度条,并且打印出当前进度的百分比。进度条会从0%更新到100%的位置,每次更新间隔0.1秒。