Как распечатать таблицы из базы данных SQLite в Python? ⇐ Python
-
Гость
Как распечатать таблицы из базы данных SQLite в Python?
Итак, у меня есть база данных с информацией, которую я хотел бы распечатать в удобном табличном формате и хранить в виде файла базы данных SQLite.
Единственные операторы печати, которые я видел, печатают информацию в запутанной форме, не выравнивая атрибуты разных объектов, не заголовки столбцов и т. д.
Процедура создания таблицы:
def create_table(): c.execute('СОЗДАТЬ ТАБЛИЦУ, ЕСЛИ НЕ СУЩЕСТВУЕТ заказов (' #CREATES TABLE с именем 'orders': 'имя ТЕКСТ, ' #имя 'type_ TEXT, ' #тип продукта 'location STRING, ' #location of product 'количество ЦЕЛОЕ ЧИСЛО', ' #'вес' предмета, г, кг, мл, кл, л и т. д. 'wholesale_cost РЕАЛЬНАЯ, ' #оптовая стоимость 'налог РЕАЛЬНЫЙ,' #tax% 'sale_pre_tax REAL, ' #стоимость продажи до уплаты налогов 'sale_post_tax REAL, ' #стоимость продажи после уплаты налогов 'количество РЕАЛЬНОЕ,' #сколько продано 'total_sale_pre_tax REAL, ' #общий объем продаж до уплаты налогов 'total_sale_post_tax, ' #общий объем продаж после уплаты налогов 'total_tax REAL, ' #общая сумма налога в фунтах стерлингов 'total_wholesale_cost REAL, ' #total оптовая цена 'прибыль РЕАЛЬНАЯ)') #общая прибыль от продажи А это процедура печати:
def read_from_db(): c.execute('ВЫБРАТЬ * ИЗ заказов') для строки в c.fetchall(): печать (строка) Когда я выполняю это, он печатает:
('НОРИ', 'СУХОЙ', 'ПОЛКИ', '50Г', 3.4, 20.0, 4.42, 5.303999999999999, 3.0, 13.26, 15.9119999999999999, 2.6519999999999992, 10.2, 3.0600000000000005)
('СОУС КАРРИ', 'СУХОЙ', 'ПОЛКИ', '500Г', 5.65, 25.0, 7.345000000000001, 9.18125, 1.0, 7.3450000000000001, 9.18125, 1.8362499999999997, 5.65, 1.6950000000000003)
('ЛОСОСЬ', 'ОХЛАЖДЕННЫЙ', 'ХОЛОДИЛЬНИК', '100Г', 1,25, 20,0, 1,625, 1,95, 3,0, 4,875, 5,85, 0,9749999999999996, 3,75, 1,125)
('ЭДАМАМЕ', 'ОХЛАЖДЕННЫЙ', 'ХОЛОДИЛЬНИК', '100Г', 3.0, 19.0, 4.0, 5.0, 3.0, 12.0, 15, 3.0, 9.0, 3.0)
Какая информация находится в моей базе данных, но есть ли способ вместо этого распечатать ее в виде таблицы?
Итак, у меня есть база данных с информацией, которую я хотел бы распечатать в удобном табличном формате и хранить в виде файла базы данных SQLite.
Единственные операторы печати, которые я видел, печатают информацию в запутанной форме, не выравнивая атрибуты разных объектов, не заголовки столбцов и т. д.
Процедура создания таблицы:
def create_table(): c.execute('СОЗДАТЬ ТАБЛИЦУ, ЕСЛИ НЕ СУЩЕСТВУЕТ заказов (' #CREATES TABLE с именем 'orders': 'имя ТЕКСТ, ' #имя 'type_ TEXT, ' #тип продукта 'location STRING, ' #location of product 'количество ЦЕЛОЕ ЧИСЛО', ' #'вес' предмета, г, кг, мл, кл, л и т. д. 'wholesale_cost РЕАЛЬНАЯ, ' #оптовая стоимость 'налог РЕАЛЬНЫЙ,' #tax% 'sale_pre_tax REAL, ' #стоимость продажи до уплаты налогов 'sale_post_tax REAL, ' #стоимость продажи после уплаты налогов 'количество РЕАЛЬНОЕ,' #сколько продано 'total_sale_pre_tax REAL, ' #общий объем продаж до уплаты налогов 'total_sale_post_tax, ' #общий объем продаж после уплаты налогов 'total_tax REAL, ' #общая сумма налога в фунтах стерлингов 'total_wholesale_cost REAL, ' #total оптовая цена 'прибыль РЕАЛЬНАЯ)') #общая прибыль от продажи А это процедура печати:
def read_from_db(): c.execute('ВЫБРАТЬ * ИЗ заказов') для строки в c.fetchall(): печать (строка) Когда я выполняю это, он печатает:
('НОРИ', 'СУХОЙ', 'ПОЛКИ', '50Г', 3.4, 20.0, 4.42, 5.303999999999999, 3.0, 13.26, 15.9119999999999999, 2.6519999999999992, 10.2, 3.0600000000000005)
('СОУС КАРРИ', 'СУХОЙ', 'ПОЛКИ', '500Г', 5.65, 25.0, 7.345000000000001, 9.18125, 1.0, 7.3450000000000001, 9.18125, 1.8362499999999997, 5.65, 1.6950000000000003)
('ЛОСОСЬ', 'ОХЛАЖДЕННЫЙ', 'ХОЛОДИЛЬНИК', '100Г', 1,25, 20,0, 1,625, 1,95, 3,0, 4,875, 5,85, 0,9749999999999996, 3,75, 1,125)
('ЭДАМАМЕ', 'ОХЛАЖДЕННЫЙ', 'ХОЛОДИЛЬНИК', '100Г', 3.0, 19.0, 4.0, 5.0, 3.0, 12.0, 15, 3.0, 9.0, 3.0)
Какая информация находится в моей базе данных, но есть ли способ вместо этого распечатать ее в виде таблицы?