Python读取大文件时显示彩色进度条(rich)
Posted Xavier Jiezou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python读取大文件时显示彩色进度条(rich)相关的知识,希望对你有一定的参考价值。
引言
为了更友好的用户体验,我们在读取大文件时可以制作一个进度条,以展示文件读取进度,本文是其基于 rich 库的 Python 实现。
安装
pip install rich
样例
本文以 900MB 左右的 .tar.gz
压缩文件为例,展示其在读取时显示进度条的实现方法。
方法
使用默认进度条样式
import tarfile
import rich.progress
with rich.progress.open("test.tar.gz", "rb") as file:
with tarfile.open(fileobj=file) as tar:
for tarinfo in tar:
pass
自定义进度条的样式
import tarfile
from rich.progress import Progress
from rich.progress import (
BarColumn,
DownloadColumn,
Progress,
SpinnerColumn,
TaskProgressColumn,
TimeElapsedColumn,
TimeRemainingColumn,
)
progress = Progress(
SpinnerColumn(),
"task.description",
BarColumn(),
DownloadColumn(),
TaskProgressColumn(),
TimeElapsedColumn(),
TimeRemainingColumn(),
)
with progress:
with progress.open("test.tar.gz", "rb", description="Extracting...") as file:
with tarfile.open(fileobj=file) as tar:
for tarinfo in tar:
pass
参考
Rich 12.4.4 documentation / Progress Display / Reading from a file
以上是关于Python读取大文件时显示彩色进度条(rich)的主要内容,如果未能解决你的问题,请参考以下文章