Преобразование строк красивой таблицы в список

#python #python-beautifultable

#python #python-beautifultable

Вопрос:

Я хотел бы преобразовать строки beautifultable в элементы списка, исключив заголовок, например:

  [['A',2,4], ['B',2,5], ['C',2,1]]
  

Ответ №1:

Просто вызовите

list(map(list, table))

полный код:

 from beautifultable import BeautifulTable
table = BeautifulTable()
table.column_headers = ["c1", "c2", "c3"]
table.append_row(['A', 2, 4])
table.append_row(['B', 2, 5])
table.append_row(['C', 2, 6])
print(table)
# it will print
#  ---- ---- ---- 
# | c1 | c2 | c3 |
#  ---- ---- ---- 
# | A  | 2  | 4  |
#  ---- ---- ---- 
# | B  | 2  | 5  |
#  ---- ---- ---- 
# | C  | 2  | 6  |
#  ---- ---- ---- 
li = list(map(list, table))
print(li)
# it will print
# [['A', 2, 4], ['B', 2, 5], ['C', 2, 6]]
  

Ответ №2:

Beautifultable выдаст следующий результат, если вы попытаетесь получить строки:

     list([r for r in table])

 => [RowData<'A',2,4>, RowData<'B',2,5>, RowData<'C',2,1>]  
  

Чтобы преобразовать ее в форму: [['A',2,4], ['B',2,5], ['C',2,1]]

Используйте:

 list([list(r) for r in table])