国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Flask后端實踐 連載十三 Flask輸出Excel報表

tips:

  • 簡單實現(xiàn)Flask輸出Excel報表

  • 本文基于python3編寫

  • 代碼倉庫

項目場景

由于項目是工程上的使用,不僅需要對采集的數(shù)據(jù)進行分析,也需要輸出報表,使用程序輸出報表極大的簡化了報表制作流程。

Python處理Excel的包

  1. openpyxl

    用于讀取和寫入Excel 2010文件的推薦包(即:.xlsx)。文檔地址

  2. xlsxwriter

    用于編寫數(shù)據(jù),格式化信息,特別是Excel 2010格式的圖表的替代軟件包(即:.xlsx)。文檔地址

  3. xlrd

    此包用于從舊的Excel文件中讀取數(shù)據(jù)和格式信息(即:.xls)。文檔地址

  4. xlwt

    此包用于將數(shù)據(jù)和格式信息寫入舊的Excel文件(即:.xls)。文檔地址

  5. xlutils

    該軟件包收集需要xlrd和xlwt的實用程序,包括復(fù)制,修改或過濾現(xiàn)有excel文件的功能。一般來說,openpyxl現(xiàn)在涵蓋了這些用例!文檔地址

xlsxwriter簡單使用

項目上所需的報表,圖表比較多,且比較復(fù)雜。所有就采用了繪圖方面更加完善的xlsxwriter

  1. 安裝pip install xlsxwriter

  2. 簡單使用,更多詳細內(nèi)容請看官方文檔。

    import xlsxwriter# 新建excel文本workbook = xlsxwriter.Workbook("test.xlsx")# 添加一個sheetworksheet = workbook.add_worksheet("test1")# 設(shè)置列寬worksheet.set_column('A:A', 20)# 添加字體加粗樣式bold = workbook.add_format({'bold': True})# 寫入數(shù)據(jù)worksheet.write('A1', 'Hello')# 寫入數(shù)據(jù)并使用樣子worksheet.write('A2', 'World', bold)# 使用數(shù)字標識單元格位置(行,列)worksheet.write(2, 0, 123)worksheet.write(3, 0, 123.456)# 按行依次寫入數(shù)據(jù)worksheet.write_column(4, 0, [1, 2, 3, 4])# 按列依次寫入數(shù)據(jù)worksheet.write_row(1, 1, [1, 2, 3, 4])# 添加圖表chart = workbook.add_chart({'type': 'column'})# 圖表數(shù)據(jù)來源chart.add_series({'values': ["test1",  # worksheet的名字。即sheet_name                            4, 0, 7, 0  # 數(shù)據(jù)位置                            ]})# 插入的表格位置worksheet.insert_chart('B3', chart)# 關(guān)閉excel文本并輸出到指定位置。如果不調(diào)用改方法,無法輸出excelworkbook.close()

Flask結(jié)合xlsxwriter使用

  • 測試代碼

    import xlsxwriterfrom flask import Flaskdef write():    path = "test.xlsx"    # 新建excel文本    workbook = xlsxwriter.Workbook(path)    # 添加一個sheet    worksheet = workbook.add_worksheet("test1")    # 設(shè)置列寬    worksheet.set_column('A:A', 20)    # 添加字體加粗樣式    bold = workbook.add_format({'bold': True})    # 寫入數(shù)據(jù)    worksheet.write('A1', 'Hello')    # 寫入數(shù)據(jù)并使用樣子    worksheet.write('A2', 'World', bold)    # 使用數(shù)字標識單元格位置(行,列)    worksheet.write(2, 0, 123)    worksheet.write(3, 0, 123.456)    # 按行依次寫入數(shù)據(jù)    worksheet.write_column(4, 0, [1, 2, 3, 4])    # 按列依次寫入數(shù)據(jù)    worksheet.write_row(1, 1, [1, 2, 3, 4])    # 添加圖表    chart = workbook.add_chart({'type': 'column'})    # 圖表數(shù)據(jù)來源    chart.add_series({'values': ["test1",  # worksheet的名字。即sheet_name                                4, 0, 7, 0  # 數(shù)據(jù)位置                                ]})    # 插入的表格位置    worksheet.insert_chart('B3', chart)    # 關(guān)閉excel文本并輸出到指定位置。如果不調(diào)用改方法,無法輸出excel    workbook.close()    return pathapp = Flask(__name__)@app.route('/testExcel', methods=["GET"])def test_excel():    """    測試輸出excel    :return:    """    path = write()    return pathif __name__ == '__main__':    app.run()
  • 啟動app,訪問http://127.0.0.1:5000/testExcel 返回生成路徑test.xlsx。然后配合nginx轉(zhuǎn)發(fā)即可下載文件

總結(jié)

  • 本篇文章簡單介紹了xlsxwriter的使用,具體的使用場景應(yīng)該與項目需求相結(jié)合。

  • 下一篇將介紹Flask輸出Word報表

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Python 操作Excel文件 (十五)
Pandas專家總結(jié):指定樣式保存excel數(shù)據(jù)的 “N種” 姿勢!
python處理excel總結(jié)
自動化辦公:python操作Excel
python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作
大話 Python:python 操作 excel 系列 -- 怎樣將數(shù)據(jù)寫入 excel 文件?
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服