使用Python怎么在數(shù)據(jù)庫中格式化輸出文檔?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
在廣東等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計、網(wǎng)站制作、外貿(mào)營銷網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需網(wǎng)站制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站,成都外貿(mào)網(wǎng)站建設(shè)公司,廣東網(wǎng)站建設(shè)費用合理。首先,數(shù)據(jù)已經(jīng)錄入庫,需要python能讀取數(shù)據(jù)庫,可使用mysql-connector
其次,格式化輸出的文檔,肯定需要文件讀寫操作,需使用os
接著,考慮到各大平臺多數(shù)支持markdown格式,優(yōu)先輸出md格式文檔。若輸出doc,需使用docx
補充,python一鍵執(zhí)行,分頁數(shù)據(jù)操作,接收外部參數(shù),需使用sys
分頁獲取數(shù)據(jù)庫內(nèi)容
import mysql.connector # 數(shù)據(jù)庫中page頁數(shù)據(jù) def fetch_data_from_db(page): cmd = 'select * from xxx order by id limit ' + str(page * 50) + ', ' + str(50) conn = mysql.connector.connect(user='xxx', password='xxx', database='xxx') cursor = conn.cursor() cursor.execute(cmd) values = cursor.fetchall() conn.commit() cursor.close() conn.close() return values
格式化輸出md文檔,md中添加表格樣式
import mysql.connector # 數(shù)據(jù)庫中page頁數(shù)據(jù) def fetch_data_from_db(page): cmd = 'select * from xxx order by id limit ' + str(page * 50) + ', ' + str(50) conn = mysql.connector.connect(user='xxx', password='xxx', database='xxx') cursor = conn.cursor() cursor.execute(cmd) values = cursor.fetchall() conn.commit() cursor.close() conn.close() return values
格式話輸出doc文檔
from docx import Document from docx.shared import Cm def export_format_md(page, books): fileName = '善齋書屋第' + str(page) + '期.docx' document = Document() table = document.add_table(rows = 51, cols = 3) # 設(shè)置行列數(shù) table.cell(0, 0).text = "索引" table.cell(0, 1).text = "作者" table.cell(0, 2).text = "書名" for index, book in enumerate(books): table.cell(index+1, 0).text = "{0:05d}".format(book[0]) table.cell(index+1, 1).text = book[2] table.cell(index+1, 2).text = book[1] document.save(fileName)
外部傳參獲取
if __name__ == '__main__': args = sys.argv if len(args) == 2: # 獲取分頁 page = args[1] books = fetch_data_from_db(page) export_format_md(page, books)
一鍵執(zhí)行
python3 xxxx.py 0
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,的支持。