rich.table

class rich.table.Column(header='', footer='', header_style='', footer_style='', style='', justify='left', vertical='top', overflow='ellipsis', width=None, min_width=None, max_width=None, ratio=None, no_wrap=False, _index=0, _cells=<factory>)[source]

定义 ~Table 中的一列。

参数
  • title (Union[str, Text], optional) – 表格标题,渲染在表格顶部。默认值为 None。

  • caption (Union[str, Text], optional) – 表格标题,渲染在表格底部。默认值为 None。

  • width (int, optional) – 表格的字符宽度,或 None 表示自动调整宽度。默认值为 None。

  • min_width (Optional[int], optional) – 表格的最小宽度,或 None 表示没有最小宽度。默认值为 None。

  • box (box.Box, optional) – box.py 中用于绘制边框的常量之一(参见 Box),或 None 表示不绘制边框。默认值为 box.HEAVY_HEAD。

  • safe_box (Optional[bool], optional) – 禁用在 Windows 遗留终端(使用 *raster* 字体)上无法显示的边框字符。默认值为 True。

  • padding (PaddingDimensions, optional) – 每个单元格的填充(上、右、下、左)。默认值为 (0, 1)。

  • collapse_padding (bool, optional) – 启用折叠单元格周围的填充。默认值为 False。

  • pad_edge (bool, optional) – 启用边缘单元格的填充。默认值为 True。

  • expand (bool, optional) – 如果为 True,则扩展表格以适应可用空间,否则表格宽度将自动计算。默认值为 False。

  • show_header (bool, optional) – 显示标题行。默认值为 True。

  • show_footer (bool, optional) – 显示页脚行。默认值为 False。

  • show_edge (bool, optional) – 在表格周围绘制边框。默认值为 True。

  • show_lines (bool, optional) – 在每行之间绘制分隔线。默认值为 False。

  • leading (bool, optional) – 行与行之间的空行数量(排除 show_lines)。默认值为 0。

  • style (Union[str, Style], optional) – 表格的默认样式。默认值为 “none”。

  • row_styles (List[Union, str], optional) – 可选的行样式列表,如果指定了多个样式,则这些样式将交替使用。默认值为 None。

  • header_style (Union[str, Style], optional) – 标题的样式。默认值为 “table.header”。

  • footer_style (Union[str, Style], optional) – 页脚的样式。默认值为 “table.footer”。

  • border_style (Union[str, Style], optional) – 边框的样式。默认值为 None。

  • title_style (Union[str, Style], optional) – 标题的样式。默认值为 None。

  • caption_style (Union[str, Style], optional) – 标题的样式。默认值为 None。

  • title_justify (str, optional) – 标题的排版方式。默认值为 “center”。

  • caption_justify (str, optional) – 标题的排版方式。默认值为 “center”。

  • highlight (bool, optional) – 高亮显示单元格内容(如果为 str)。默认值为 False。

  • header (RenderableType) –

  • footer (RenderableType) –

  • justify (JustifyMethod) –

  • vertical (VerticalAlignMethod) –

  • overflow (OverflowMethod) –

  • max_width (Optional[int]) –

  • ratio (Optional[int]) –

  • no_wrap (bool) –

  • _index (int) –

  • _cells (List[RenderableType]) –

property cells: Iterable[RenderableType]

获取列中的所有单元格,不包括标题。

copy()[source]

返回此 Column 的副本。

返回类型

Column

property flexible: bool

检查此列是否可调整。

footer: RenderableType = ''

页脚的渲染内容(通常是字符串)

类型

RenderableType

footer_style: Union[str, Style] = ''

页脚的样式。

类型

StyleType

header: RenderableType = ''

标题的渲染内容(通常是字符串)

类型

RenderableType

header_style: Union[str, Style] = ''

表头的样式。

类型

StyleType

justify: JustifyMethod = 'left'

文本在列中的对齐方式(“left”、 “center”、 “right” 或 “full”)。

类型

str

max_width: Optional[int] = None

列的最大宽度,或 None 表示没有最大宽度。默认为 None。

类型

Optional[int]

min_width: Optional[int] = None

列的最小宽度,或 None 表示没有最小宽度。默认为 None。

类型

Optional[int]

no_wrap: bool = False

阻止文本在列中的换行。默认为 False

类型

bool

overflow: OverflowMethod = 'ellipsis'

溢出方法。

类型

str

ratio: Optional[int] = None

计算列宽时使用的比例,或 None (默认) 以适应列内容。

类型

Optional[int]

style: Union[str, Style] = ''

列的样式。

类型

StyleType

vertical: VerticalAlignMethod = 'top'

内容的垂直对齐方式(“top”、 “middle” 或 “bottom”)。

类型

str

width: Optional[int] = None

列的宽度,或 None (默认) 以自动计算宽度。

类型

Optional[int]

class rich.table.Row(style=None, end_section=False)[source]

有关行的信息。

参数
end_section: bool = False

表示节的结束,这将强制在该行下方添加一条线。

style: Optional[Union[str, Style]] = None

应用于行的样式。

class rich.table.Table(*headers, title=None, caption=None, width=None, min_width=None, box=Box(...), safe_box=None, padding=(0, 1), collapse_padding=False, pad_edge=True, expand=False, show_header=True, show_footer=False, show_edge=True, show_lines=False, leading=0, style='none', row_styles=None, header_style='table.header', footer_style='table.footer', border_style=None, title_style=None, caption_style=None, title_justify='center', caption_justify='center', highlight=False)[source]

一个用于绘制表格的控制台可渲染对象。

参数
  • *headers (Union[Column, str]) – 表格的列标题,可以是字符串或 Column 实例。

  • title (Union[str, Text], optional) – 表格标题,渲染在表格顶部。默认值为 None。

  • caption (Union[str, Text], optional) – 表格标题,渲染在表格底部。默认值为 None。

  • width (int, optional) – 表格的字符宽度,或 None 表示自动调整宽度。默认值为 None。

  • min_width (Optional[int], optional) – 表格的最小宽度,或 None 表示没有最小宽度。默认值为 None。

  • box (box.Box, optional) – box.py 中用于绘制边框的常量之一(参见 Box),或 None 表示不绘制边框。默认值为 box.HEAVY_HEAD。

  • safe_box (Optional[bool], optional) – 禁用在 Windows 遗留终端(使用 *raster* 字体)上无法显示的边框字符。默认值为 True。

  • padding (PaddingDimensions, optional) – 每个单元格的填充(上、右、下、左)。默认值为 (0, 1)。

  • collapse_padding (bool, optional) – 启用折叠单元格周围的填充。默认值为 False。

  • pad_edge (bool, optional) – 启用边缘单元格的填充。默认值为 True。

  • expand (bool, optional) – 如果为 True,则扩展表格以适应可用空间,否则表格宽度将自动计算。默认值为 False。

  • show_header (bool, optional) – 显示标题行。默认值为 True。

  • show_footer (bool, optional) – 显示页脚行。默认值为 False。

  • show_edge (bool, optional) – 在表格周围绘制边框。默认值为 True。

  • show_lines (bool, optional) – 在每行之间绘制分隔线。默认值为 False。

  • leading (bool, optional) – 行与行之间的空行数量(排除 show_lines)。默认值为 0。

  • style (Union[str, Style], optional) – 表格的默认样式。默认值为 “none”。

  • row_styles (List[Union, str], optional) – 可选的行样式列表,如果指定了多个样式,则这些样式将交替使用。默认值为 None。

  • header_style (Union[str, Style], optional) – 标题的样式。默认值为 “table.header”。

  • footer_style (Union[str, Style], optional) – 页脚的样式。默认值为 “table.footer”。

  • border_style (Union[str, Style], optional) – 边框的样式。默认值为 None。

  • title_style (Union[str, Style], optional) – 标题的样式。默认值为 None。

  • caption_style (Union[str, Style], optional) – 标题的样式。默认值为 None。

  • title_justify (str, optional) – 标题的排版方式。默认值为 “center”。

  • caption_justify (str, optional) – 标题的排版方式。默认值为 “center”。

  • highlight (bool, optional) – 高亮显示单元格内容(如果为 str)。默认值为 False。

add_column(header='', footer='', *, header_style=None, footer_style=None, style=None, justify='left', vertical='top', overflow='ellipsis', width=None, min_width=None, max_width=None, ratio=None, no_wrap=False)[source]

向表格中添加一列。

参数
  • header (RenderableType, optional) – 列标题文本或可渲染对象。默认为“”。

  • footer (RenderableType, optional) – 列尾文本或可渲染对象。默认为“”。

  • header_style (Union[str, Style], optional) – 列标题的样式,或 None 使用默认样式。默认为 None。

  • footer_style (Union[str, Style], optional) – 列尾的样式,或 None 使用默认样式。默认为 None。

  • style (Union[str, Style], optional) – 列单元格的样式,或 None 使用默认样式。默认为 None。

  • justify (JustifyMethod, optional) – 单元格的对齐方式。默认为“left”。

  • vertical (VerticalAlignMethod, optional) – 垂直对齐方式,可以是“top”、“middle”或“bottom”。默认为“top”。

  • overflow (OverflowMethod) – 超出宽度时的处理方式:“crop”、“fold”、“ellipsis”。默认为“ellipsis”。

  • width (int, optional) – 列的期望宽度(字符数),或 None 自动适应内容。默认为 None。

  • min_width (Optional[int], optional) – 列的最小宽度,或 None 无最小宽度。默认为 None。

  • max_width (Optional[int], optional) – 列的最大宽度,或 None 无最大宽度。默认为 None。

  • ratio (int, optional) – 列的弹性比例(需要使用 Table.expandTable.width)。默认为 None。

  • no_wrap (bool, optional) – 设置为 True 禁用此列的换行。

返回类型

None

add_row(*renderables, style=None, end_section=False)[source]

添加一行可渲染对象。

参数
  • *renderables (None or renderable) – 每一行中的每个单元格必须是可渲染对象(包括 str),或 None 表示空白单元格。

  • style (StyleType, optional) – 可选的样式,应用于整行。默认为 None。

  • end_section (bool, optional) – 结束一个部分并在当前行之后绘制一条线。默认为 False。

Raises

errors.NotRenderableError – 如果添加了无法渲染的内容。

返回类型

None

add_section()[source]

添加一个新的部分(在当前行之后绘制一条线)。

返回类型

None

property expand: bool

设置非 None 的 self.width 意味着 expand。

get_row_style(console, index)[source]

获取当前行的样式。

参数
返回类型

Union[str, Style]

classmethod grid(*headers, padding=0, collapse_padding=True, pad_edge=False, expand=False)[source]

获取一个没有边框、标题或页脚的表格。

参数
  • *headers (Union[Column, str]) – 表格的列标题,可以是字符串或 Column 实例。

  • padding (PaddingDimensions, optional) – 获取单元格周围的填充。默认为 0。

  • collapse_padding (bool, optional) – 启用单元格周围填充的折叠。默认为 True。

  • pad_edge (bool, optional) – 启用表格边缘周围的填充。默认为 False。

  • expand (bool, optional) – 如果为 True,则扩展表格以适应可用空间,否则表格宽度将自动计算。默认值为 False。

返回

一个表格实例。

返回类型

表格

property padding: Tuple[int, int, int, int]

获取单元格填充。

property row_count: int

获取当前的行数。