rich.progress

class rich.progress.BarColumn(bar_width=40, style='bar.back', complete_style='bar.complete', finished_style='bar.finished', pulse_style='bar.pulse', table_column=None)[源代码]

呈现可视进度条。

参数
  • bar_width (Optional[int], optional) -- 条形的宽度或无以表示全宽。默认为40。

  • style (StyleType, optional) -- 栏背景的样式。默认为“bar.back”。

  • complete_style (StyleType, optional) -- 已完成的栏的样式。默认为“bar.Complete”。

  • finished_style (StyleType, optional) -- 成品酒吧的风格。默认为“bar.fined”。

  • pulse_style (StyleType, optional) -- 脉动棒的样式。默认为“bar.Pulse”。

  • table_column (Optional[Column]) --

render(task)[源代码]

获取任务的进度条小工具。

参数

task (Task) --

返回类型

ProgressBar

class rich.progress.DownloadColumn(binary_units=False, table_column=None)[源代码]

显示下载的文件大小和总大小,例如‘0.5/2.3 GB’。

参数
  • binary_units (bool, optional) -- 使用二进制单位、KiB、MIB等。默认为FALSE。

  • table_column (Optional[Column]) --

render(task)[源代码]

计算已完成和合计的公用单位。

参数

task (Task) --

返回类型

Text

class rich.progress.FileSizeColumn(table_column=None)[源代码]

呈现完成的文件大小。

参数

table_column (Optional[Column]) --

render(task)[源代码]

已完成显示数据。

参数

task (Task) --

返回类型

Text

class rich.progress.MofNCompleteColumn(separator='/', table_column=None)[源代码]

呈现已完成的计数/总数,例如‘10/1000’。

最适合具有整型数量的受限任务。

空格填充已完成的计数,以便进度长度不会随着任务进度超过10的幂而改变。

参数
  • separator (str, optional) -- 分隔已完成值和合计值的文本。默认为“/”。

  • table_column (Optional[Column]) --

render(task)[源代码]

显示已完成/总计。

参数

task (Task) --

返回类型

Text

class rich.progress.Progress(*columns, console=None, auto_refresh=True, refresh_per_second=10, speed_estimate_period=30.0, transient=False, redirect_stdout=True, redirect_stderr=True, get_time=None, disable=False, expand=False)[源代码]

呈现自动更新进度条(S)。

参数
  • console (Console, optional) -- 可选控制台实例。默认情况下,内部控制台实例将写入标准输出。

  • auto_refresh (bool, optional) -- 启用自动刷新。如果禁用,则需要调用 refresh()

  • refresh_per_second (Optional[float], optional) -- 每秒刷新进度信息的次数,或使用默认设置为None(无)。默认为无。

  • speed_estimate_period (float) -- (浮点型,可选):用于计算速度估计的时段(秒)。默认为30。

  • transient (bool) -- (Bool,可选):退出时清除进度。默认为False。

  • redirect_stdout (bool) -- (Bool,可选):启用标准输出重定向,因此 print 可能会被使用。默认为True。

  • redirect_stderr (bool) -- (Bool,可选):启用stderr的重定向。默认为True。

  • get_time (Optional[Callable[[], float]]) -- (Callable,可选):获取当前时间的可调用对象,或使用Console.get_time的None。默认为无。

  • disable (bool, optional) -- 禁用进度显示。缺省值为False

  • expand (bool, optional) -- 展开任务表以适应宽度。默认为False。

  • columns (Union[str, ProgressColumn]) --

add_task(description, start=True, total=100.0, completed=0, visible=True, **fields)[源代码]

将新的“任务”添加到进度显示中。

参数
  • description (str) -- 对任务的描述。

  • start (bool, optional) -- 立即开始任务(以计算已用时间)。如果设置为False,则需要调用 start 手工操作。默认为True。

  • total (float, optional) -- 进度中的总步数(如果已知)。设置为无可渲染脉动动画。默认为100。

  • completed (int, optional) -- 到目前为止已完成的步骤数。默认为0。

  • visible (bool, optional) -- 启用任务显示。默认为True。

  • **fields (str) -- 渲染所需的其他数据字段。

返回

您可以在呼叫时使用的ID update

返回类型

TaskID

advance(task_id, advance=1)[源代码]

将任务推进一系列步骤。

参数
  • task_id (TaskID) -- 任务ID。

  • advance (float) -- 前进的步数。默认值为1。

返回类型

None

property finished: bool

检查是否已完成所有任务。

classmethod get_default_columns()[源代码]
获取用于新Progress实例的默认列:
  • 描述的文本列(TextColumn)

  • 栏本身(BarColumn)

  • 显示完成百分比的文本列(TextColumn)

  • 估计剩余时间列(TimeRemainingColumn)

如果在没有传递Columns参数的情况下创建Progress实例,则将使用此处定义的默认列。

您还可以在默认设置之前和/或之后使用自定义列创建Progress实例,如下例所示:

进度=进度(

SpinnerColumn(),*Progress.Get_Default_Columns(),“elapsed:”,TimeElapsedColumn(),

)

此代码显示了进度显示的创建,其中包含左侧的微调控件、默认列和标记为已用时间的列。

返回类型

Tuple[ProgressColumn, ...]

get_renderable()[源代码]

获取进度显示的可呈现对象。

返回类型

Union[ConsoleRenderable, RichCast, str]

get_renderables()[源代码]

获取用于进度显示的多个可渲染对象。

返回类型

Iterable[Union[ConsoleRenderable, RichCast, str]]

make_tasks_table(tasks)[源代码]

获取一个用于呈现进度显示的表。

参数

tasks (Iterable[Task]) -- 任务实例的可迭代数,表的每行一个。

返回

一个表实例。

返回类型

Table

open(file: Union[str, PathLike[str], bytes], mode: Literal['rb'], buffering: int = -1, encoding: Optional[str] = None, errors: Optional[str] = None, newline: Optional[str] = None, *, total: Optional[int] = None, task_id: Optional[TaskID] = None, description: str = 'Reading...') BinaryIO[源代码]
open(file: Union[str, PathLike[str], bytes], mode: Union[Literal['r'], Literal['rt']], buffering: int = -1, encoding: Optional[str] = None, errors: Optional[str] = None, newline: Optional[str] = None, *, total: Optional[int] = None, task_id: Optional[TaskID] = None, description: str = 'Reading...') TextIO

从二进制文件读取时跟踪进度。

参数
  • path (Union[str, PathLike[str]]) -- 要读取的文件的路径。

  • mode (str) -- 用于打开文件的模式。仅支持r、rb或rt。

  • buffering (int) -- 要使用的缓冲策略,请参见 io.open()

  • encoding (str, optional) -- 在文本模式下阅读时要使用的编码,请参见 io.open()

  • errors (str, optional) -- 解码错误的错误处理策略,请参见 io.open()

  • newline (str, optional) -- 在文本模式下处理换行符的策略,请参见 io.open()

  • total (int, optional) -- 要读取的总字节数。如果没有指定,则使用os.stat(路径).st_SIZE。

  • task_id (TaskID) -- 要跟踪的任务。默认为新任务。

  • description (str, optional) -- 任务描述(如果创建了新任务)。

返回

二进制模式下可读的类似文件的对象。

返回类型

BinaryIO

抛出

ValueError -- 当给定无效模式时。

refresh()[源代码]

刷新(呈现)进度信息。

返回类型

None

remove_task(task_id)[源代码]

如果任务存在,请将其删除。

参数

task_id (TaskID) -- 任务ID。

返回类型

None

reset(task_id, *, start=True, total=None, completed=0, visible=None, description=None, **fields)[源代码]

将如此完成的任务重置为0,时钟将重置。

参数
  • task_id (TaskID) -- 任务ID。

  • start (bool, optional) -- 重置后启动任务。默认为True。

  • total (float, optional) -- 任务中的新总步数,或使用当前总步数的无。默认为无。

  • completed (int, optional) -- 已完成的步骤数。默认为0。

  • visible (bool, optional) -- 启用任务显示。默认为True。

  • description (str, optional) -- 如果不是无,则更改任务描述。默认为无。

  • **fields (str) -- 渲染所需的其他数据字段。

返回类型

None

start()[源代码]

启动进度显示。

返回类型

None

start_task(task_id)[源代码]

开始一项任务。

启动任务(在计算运行时间时使用)。如果您调用,则可能需要手动调用 add_task 使用 start=False

参数

task_id (TaskID) -- 任务ID。

返回类型

None

stop()[源代码]

停止进度显示。

返回类型

None

stop_task(task_id)[源代码]

停止任务。

这将冻结任务的运行时间。

参数

task_id (TaskID) -- 任务ID。

返回类型

None

property task_ids: List[TaskID]

任务ID列表。

property tasks: List[Task]

获取任务实例列表。

track(sequence, total=None, task_id=None, description='Working...', update_period=0.1)[源代码]

通过迭代序列来跟踪进度。

参数
  • sequence (Sequence[ProgressType]) -- 要迭代和跟踪进度的值序列。

  • total (Optional[float]) -- (浮点数,可选):步长总数。默认为len(序列)。

  • task_id (Optional[TaskID]) -- (TaskID):要跟踪的任务。默认为新任务。

  • description (str) -- (str,可选):任务描述,如果创建了新任务。

  • update_period (float, optional) -- 调用更新()之间的最短时间(秒)。默认为0.1。

返回

从提供的序列中获取的值的可迭代数。

返回类型

Iterable[ProgressType]

update(task_id, *, total=None, completed=None, advance=None, description=None, visible=None, refresh=False, **fields)[源代码]

更新与任务关联的信息。

参数
  • task_id (TaskID) -- 任务ID(由ADD_TASK返回)。

  • total (float, optional) -- 如果不是无,则更新task.Total。

  • completed (float, optional) -- 更新任务。如果不是无,则已完成。

  • advance (float, optional) -- 如果不为None,则向task.Complete添加一个值。

  • description (str, optional) -- 如果不是无,则更改任务描述。

  • visible (bool, optional) -- 如果不是无,则设置可见标志。

  • refresh (bool) -- 强制刷新进度信息。默认值为FALSE。

  • **fields (Any) -- 渲染所需的其他数据字段。

返回类型

None

wrap_file(file, total=None, *, task_id=None, description='Reading...')[源代码]

跟踪从二进制文件读取进度文件。

参数
  • file (BinaryIO) -- 以二进制模式打开的类似文件的对象。

  • total (int, optional) -- 要读取的总字节数。必须提供这一点,除非还给出了一个带有总数的任务。

  • task_id (TaskID) -- 要跟踪的任务。默认为新任务。

  • description (str, optional) -- 任务描述(如果创建了新任务)。

返回

二进制模式下可读的类似文件的对象。

返回类型

BinaryIO

抛出

ValueError -- 当无法从参数或任务中提取总值时。

class rich.progress.ProgressColumn(table_column=None)[源代码]

在进度显示中使用的小工具的基类。

参数

table_column (Optional[Column]) --

get_table_column()[源代码]

获取表列,用于构建任务表。

返回类型

Column

abstract render(task)[源代码]

应返回可呈现对象。

参数

task (Task) --

返回类型

Union[ConsoleRenderable, RichCast, str]

class rich.progress.ProgressSample(timestamp, completed)[源代码]

给定时间内的进度样本。

参数
completed: float

已完成的步骤数。

timestamp: float

样本的时间戳。

class rich.progress.RenderableColumn(renderable='', *, table_column=None)[源代码]

插入任意列的列。

参数
  • renderable (RenderableType, optional) -- 任何可渲染的。默认为空字符串。

  • table_column (Optional[Column]) --

render(task)[源代码]

应返回可呈现对象。

参数

task (Task) --

返回类型

Union[ConsoleRenderable, RichCast, str]

class rich.progress.SpinnerColumn(spinner_name='dots', style='progress.spinner', speed=1.0, finished_text=' ', table_column=None)[源代码]

带有“微调”动画的列。

参数
  • spinner_name (str, optional) -- 微调器动画的名称。默认为“点”。

  • style (StyleType, optional) -- 旋转器的样式。默认为“progress.spner”。

  • speed (float, optional) -- 旋转器的速度系数。默认为1.0。

  • finished_text (TextType, optional) -- 任务完成时使用的文本。默认为“”。

  • table_column (Optional[Column]) --

render(task)[源代码]

应返回可呈现对象。

参数

task (Task) --

返回类型

Union[ConsoleRenderable, RichCast, str]

set_spinner(spinner_name, spinner_style='progress.spinner', speed=1.0)[源代码]

设置新的微调器。

参数
  • spinner_name (str) -- 微调器名,请参见python-m rich.spner。

  • spinner_style (Optional[StyleType], optional) -- 微调控件样式。默认为“progress.spner”。

  • speed (float, optional) -- 旋转器的速度系数。默认为1.0。

返回类型

None

class rich.progress.Task(id, description, total, completed, _get_time, finished_time=None, visible=True, fields=<factory>, finished_speed=None, _lock=<factory>)[源代码]

有关进度任务的信息。

此对象应被视为只读的 Progress 班级。

参数
completed: float

已完成的步骤数

类型

浮动

description: str

任务的描述。

类型

应力

property elapsed: Optional[float]

自任务启动后经过的时间,或 None 如果任务尚未开始。

类型

任选 [float]

fields: Dict[str, Any]

通过Progress.UPDATE传入任意字段。

类型

迪克特

property finished: bool

检查任务是否已完成。

finished_speed: Optional[float] = None

已完成任务的最后速度。

类型

任选 [float]

finished_time: Optional[float] = None

时间任务已完成。

类型

浮动

get_time()[源代码]

Float:获取当前时间,单位为秒。

返回类型

float

id: TaskID

与此任务关联的任务ID(在进度方法中使用)。

property percentage: float

以百分比形式获取任务进度。如果设置了无总计,则返回0

类型

浮动

property remaining: Optional[float]

如果设置了非无总计,则获取剩余步数。

类型

任选 [float]

property speed: Optional[float]

获得以每秒步数为单位的估计速度。

类型

任选 [float]

start_time: Optional[float] = None

此任务启动的时间,如果未启动,则为无。

类型

任选 [float]

property started: bool

检查任务是否已开始。

类型

布尔尔

stop_time: Optional[float] = None

此任务停止的时间,如果未停止,则为None。

类型

任选 [float]

property time_remaining: Optional[float]

获取完成的预计时间,或 None 如果没有数据。

类型

任选 [float]

total: Optional[float]

此任务中的总步骤数。

类型

任选 [float]

visible: bool = True

指示此任务在进度显示中是否可见。

类型

布尔尔

class rich.progress.TaskProgressColumn(text_format='[progress.percentage]{task.percentage:>3.0f}%', text_format_no_percentage='', style='none', justify='left', markup=True, highlighter=None, table_column=None, show_speed=False)[源代码]

以百分比显示任务进度。

参数
  • text_format (str, optional) -- Format for percentage display. Defaults to "[progress.percentage]{task.percentage:>3.0f}%".

  • text_format_no_percentage (str, optional) -- 如果百分比未知,则设置格式。默认为“”。

  • style (StyleType, optional) -- 输出的样式。默认为“无”。

  • justify (JustifyMethod, optional) -- 文本对齐。默认为“Left”。

  • markup (bool, optional) -- 启用标记。默认为True。

  • highlighter (Optional[Highlighter], optional) -- 要应用于输出的高亮笔。默认为无。

  • table_column (Optional[Column], optional) -- 要使用的表列。默认为无。

  • show_speed (bool, optional) -- 如果总计未知,则显示速度。默认为False。

render(task)[源代码]

应返回可呈现对象。

参数

task (Task) --

返回类型

Text

classmethod render_speed(speed)[源代码]

以每秒迭代次数为单位渲染速度。

参数
返回

包含任务速度的Text对象。

返回类型

Text

class rich.progress.TextColumn(text_format, style='none', justify='left', markup=True, highlighter=None, table_column=None)[源代码]

包含文本的列。

参数
render(task)[源代码]

应返回可呈现对象。

参数

task (Task) --

返回类型

Text

class rich.progress.TimeElapsedColumn(table_column=None)[源代码]

渲染已用时间。

参数

table_column (Optional[Column]) --

render(task)[源代码]

演出时间已过。

参数

task (Task) --

返回类型

Text

class rich.progress.TimeRemainingColumn(compact=False, elapsed_when_finished=False, table_column=None)[源代码]

呈现预计剩余时间。

参数
  • compact (bool, optional) -- 当剩余时间不到一小时时,渲染MM:SS。默认为False。

  • elapsed_when_finished (bool, optional) -- 任务完成后经过的渲染时间。默认为False。

  • table_column (Optional[Column]) --

render(task)[源代码]

显示剩余时间。

参数

task (Task) --

返回类型

Text

class rich.progress.TotalFileSizeColumn(table_column=None)[源代码]

呈现总文件大小。

参数

table_column (Optional[Column]) --

render(task)[源代码]

已完成显示数据。

参数

task (Task) --

返回类型

Text

class rich.progress.TransferSpeedColumn(table_column=None)[源代码]

使人类可读的传输速度。

参数

table_column (Optional[Column]) --

render(task)[源代码]

显示数据传输速度。

参数

task (Task) --

返回类型

Text

rich.progress.open(file: Union[str, PathLike[str], bytes], mode: Union[Literal['rt'], Literal['r']], buffering: int = -1, encoding: Optional[str] = None, errors: Optional[str] = None, newline: Optional[str] = None, *, total: Optional[int] = None, description: str = 'Reading...', auto_refresh: bool = True, console: Optional[Console] = None, transient: bool = False, get_time: Optional[Callable[[], float]] = None, refresh_per_second: float = 10, style: StyleType = 'bar.back', complete_style: StyleType = 'bar.complete', finished_style: StyleType = 'bar.finished', pulse_style: StyleType = 'bar.pulse', disable: bool = False) ContextManager[TextIO][源代码]
rich.progress.open(file: Union[str, PathLike[str], bytes], mode: Literal['rb'], buffering: int = -1, encoding: Optional[str] = None, errors: Optional[str] = None, newline: Optional[str] = None, *, total: Optional[int] = None, description: str = 'Reading...', auto_refresh: bool = True, console: Optional[Console] = None, transient: bool = False, get_time: Optional[Callable[[], float]] = None, refresh_per_second: float = 10, style: StyleType = 'bar.back', complete_style: StyleType = 'bar.complete', finished_style: StyleType = 'bar.finished', pulse_style: StyleType = 'bar.pulse', disable: bool = False) ContextManager[BinaryIO]

跟踪进度时从文件中读取字节。

参数
  • path (Union[str, PathLike[str], BinaryIO]) -- 要读取的文件或二进制模式中的类似文件对象的路径。

  • mode (str) -- 用于打开文件的模式。仅支持r、rb或rt。

  • buffering (int) -- 要使用的缓冲策略,请参见 io.open()

  • encoding (str, optional) -- 在文本模式下阅读时要使用的编码,请参见 io.open()

  • errors (str, optional) -- 解码错误的错误处理策略,请参见 io.open()

  • newline (str, optional) -- 在文本模式下处理换行符的策略,请参见 io.open()

  • total -- (int,可选):要读取的总字节数。如果从文件句柄读取,则必须提供。路径的默认大小为os.stat(文件).st_Size。

  • description (str, optional) -- 进度条旁边显示的任务说明。默认为“正在阅读”。

  • auto_refresh (bool, optional) -- 自动刷新,禁用以在每次迭代后强制刷新。默认为True。

  • transient -- (Bool,可选):退出时清除进度。默认为False。

  • console (Console, optional) -- 要写入的控制台。默认创建内部控制台实例。

  • refresh_per_second (float) -- 每秒刷新进度信息的次数。默认为10。

  • style (StyleType, optional) -- 栏背景的样式。默认为“bar.back”。

  • complete_style (StyleType, optional) -- 已完成的栏的样式。默认为“bar.Complete”。

  • finished_style (StyleType, optional) -- 成品酒吧的风格。默认为“bar.fined”。

  • pulse_style (StyleType, optional) -- 脉动棒的样式。默认为“bar.Pulse”。

  • disable (bool, optional) -- 禁用进度显示。

  • encoding -- 在文本模式下阅读时要使用的编码。

返回

上下文管理器,产生进度读取器。

返回类型

ContextManager[BinaryIO]

rich.progress.track(sequence, description='Working...', total=None, auto_refresh=True, console=None, transient=False, get_time=None, refresh_per_second=10, style='bar.back', complete_style='bar.complete', finished_style='bar.finished', pulse_style='bar.pulse', update_period=0.1, disable=False, show_speed=True)[源代码]

通过迭代序列来跟踪进度。

参数
  • sequence (Iterable[ProgressType]) -- 您希望迭代的序列(必须支持“len”)。

  • description (str, optional) -- 进度条旁边显示的任务说明。默认为“工作中”。

  • total (Optional[float]) -- (浮点数,可选):步长总数。默认为len(序列)。

  • auto_refresh (bool, optional) -- 自动刷新,禁用以在每次迭代后强制刷新。默认为True。

  • transient (bool) -- (Bool,可选):退出时清除进度。默认为False。

  • console (Console, optional) -- 要写入的控制台。默认创建内部控制台实例。

  • refresh_per_second (float) -- 每秒刷新进度信息的次数。默认为10。

  • style (StyleType, optional) -- 栏背景的样式。默认为“bar.back”。

  • complete_style (StyleType, optional) -- 已完成的栏的样式。默认为“bar.Complete”。

  • finished_style (StyleType, optional) -- 成品酒吧的风格。默认为“bar.fined”。

  • pulse_style (StyleType, optional) -- 脉动棒的样式。默认为“bar.Pulse”。

  • update_period (float, optional) -- 调用更新()之间的最短时间(秒)。默认为0.1。

  • disable (bool, optional) -- 禁用进度显示。

  • show_speed (bool, optional) -- 如果总计未知,则显示速度。默认为True。

  • get_time (Optional[Callable[[], float]]) --

返回

序列中的值的可迭代数。

返回类型

Iterable[ProgressType]

rich.progress.wrap_file(file, total, *, description='Reading...', auto_refresh=True, console=None, transient=False, get_time=None, refresh_per_second=10, style='bar.back', complete_style='bar.complete', finished_style='bar.finished', pulse_style='bar.pulse', disable=False)[源代码]

跟踪进度时从文件中读取字节。

参数
  • file (Union[str, PathLike[str], BinaryIO]) -- 要读取的文件或二进制模式中的类似文件对象的路径。

  • total (int) -- 要读取的总字节数。

  • description (str, optional) -- 进度条旁边显示的任务说明。默认为“正在阅读”。

  • auto_refresh (bool, optional) -- 自动刷新,禁用以在每次迭代后强制刷新。默认为True。

  • transient (bool) -- (Bool,可选):退出时清除进度。默认为False。

  • console (Console, optional) -- 要写入的控制台。默认创建内部控制台实例。

  • refresh_per_second (float) -- 每秒刷新进度信息的次数。默认为10。

  • style (StyleType, optional) -- 栏背景的样式。默认为“bar.back”。

  • complete_style (StyleType, optional) -- 已完成的栏的样式。默认为“bar.Complete”。

  • finished_style (StyleType, optional) -- 成品酒吧的风格。默认为“bar.fined”。

  • pulse_style (StyleType, optional) -- 脉动棒的样式。默认为“bar.Pulse”。

  • disable (bool, optional) -- 禁用进度显示。

  • get_time (Optional[Callable[[], float]]) --

返回

上下文管理器,产生进度读取器。

返回类型

ContextManager[BinaryIO]