如何访问忽略标题的单元格?
How to access a cell ignoring the Title?
我正在尝试从 pretty table 访问单元格的元素。当我尝试漂亮 table 的标题也作为输出的一部分出现时。有没有办法忽略它?
from prettytable import PrettyTable
table = PrettyTable(["Column 1", "Column 2", "Column 3"])
table.title = 'TESTING'
table.add_row(["A", "B", "C"])
table.add_row(["F", "O", "O"])
table.add_row(["B", "A", "R"])
for row in table:
row.border = False
row.header = False
print(row.get_string(fields = ['Column 1']).strip())
输出如下:
| TESTING |
A
| TESTING |
F
| TESTING |
B
但我只想要字段,尤其是单元格值,而不想要标题。
有好心人帮忙吗
我尝试搜索 prettytable 的文档,但无法在线找到它。
看起来 get_string
并没有提供直接的 API 来实现这一点,但我们可以通过使用 \r
作为临时标题并使用 NONE
对于 vrules
:
from prettytable import PrettyTable, NONE
...
for row in table:
print(row.get_string(fields=['Column 1'],
border=False,
header=False,
title='\r',
vrules=NONE).strip())
或者我们可以使用 lower-level API:
for row in table.rows:
print(row[0])
两者都会输出
A
F
B
要获取特定单元格的值,您可以使用 start
和 stop
参数,它们是 zero-based 和 inclusive-exclusive(如 Python 的 range
):
print(table.get_string(fields=['Column 1'],
border=False,
header=False,
title='\r',
vrules=NONE,
start=1,
end=2).strip())
会输出
F
PyPI 的文档显示了以下样式选项
border - 布尔选项(必须为 True 或 False)。控制是否在 table.
周围绘制边框
header - 布尔选项(必须为 True 或 False)。控制 table 的第一行是否是显示所有字段名称的 header。
hrules - 控制行后水平线的打印。允许值:FRAME、HEADER、ALL、NONE - 请注意,这些是在 prettytable 模块中定义的变量,因此请确保导入它们或使用 prettytable.FRAME 等。
vrules - 控制列之间垂直规则的打印。允许值:FRAME、ALL、NONE.
所以尝试以下 -
table.border = False
table.header = False
table.vrules = 2
table.title = ''
其次是
print(table[:])
或
for row in table:
print(row)
我正在尝试从 pretty table 访问单元格的元素。当我尝试漂亮 table 的标题也作为输出的一部分出现时。有没有办法忽略它?
from prettytable import PrettyTable
table = PrettyTable(["Column 1", "Column 2", "Column 3"])
table.title = 'TESTING'
table.add_row(["A", "B", "C"])
table.add_row(["F", "O", "O"])
table.add_row(["B", "A", "R"])
for row in table:
row.border = False
row.header = False
print(row.get_string(fields = ['Column 1']).strip())
输出如下:
| TESTING |
A
| TESTING |
F
| TESTING |
B
但我只想要字段,尤其是单元格值,而不想要标题。 有好心人帮忙吗
我尝试搜索 prettytable 的文档,但无法在线找到它。
看起来 get_string
并没有提供直接的 API 来实现这一点,但我们可以通过使用 \r
作为临时标题并使用 NONE
对于 vrules
:
from prettytable import PrettyTable, NONE
...
for row in table:
print(row.get_string(fields=['Column 1'],
border=False,
header=False,
title='\r',
vrules=NONE).strip())
或者我们可以使用 lower-level API:
for row in table.rows:
print(row[0])
两者都会输出
A
F
B
要获取特定单元格的值,您可以使用 start
和 stop
参数,它们是 zero-based 和 inclusive-exclusive(如 Python 的 range
):
print(table.get_string(fields=['Column 1'],
border=False,
header=False,
title='\r',
vrules=NONE,
start=1,
end=2).strip())
会输出
F
PyPI 的文档显示了以下样式选项
border - 布尔选项(必须为 True 或 False)。控制是否在 table.
周围绘制边框header - 布尔选项(必须为 True 或 False)。控制 table 的第一行是否是显示所有字段名称的 header。
hrules - 控制行后水平线的打印。允许值:FRAME、HEADER、ALL、NONE - 请注意,这些是在 prettytable 模块中定义的变量,因此请确保导入它们或使用 prettytable.FRAME 等。
vrules - 控制列之间垂直规则的打印。允许值:FRAME、ALL、NONE.
所以尝试以下 -
table.border = False
table.header = False
table.vrules = 2
table.title = ''
其次是
print(table[:])
或
for row in table:
print(row)