python中xlwt的简单使用

目的:保存数据到excel文件中

1. 背景

xlwtpython中用于处理表格文件的第三方包,其中xlwt用于写,xlrt用于读。由于这里只需要写数据到excel文件中,故而这里就简单使用xlwt包。

  • 安装:pip install xlwt -i https://pypi.douban.com/simple
  • 参考:here

数据还是上篇的。

def saveUserInfo2EXCEL():
    # 1. 创建一个工作簿workbook
    xl = xlwt.Workbook(encoding='utf-8')
    # 创建一个sheet对象,第二个参数是指单元格是否允许重设置,默认为False
    sheet = xl.add_sheet('总用户信息', cell_overwrite_ok=True)
    header_row = ["用户ID", "用户姓名", "性别", "电话", "QQ", "微信", "用户角色", "所属部门", "直接领导"]
    datas = list(UserDB().getAllUserInfo())
    for i in range(len(datas)):
        data = [str(i+1), datas[i]['username'], datas[i]['sex'], datas[i]['phone'], datas[i]['qq'], datas[i]['weichat'], datas[i]['role'], datas[i]['department'], datas[i]['superior']]
        if i==0:
            for j in range(len(header_row)):
                # 第一个参数代表行,第二个参数是列,第三个参数是内容,第四个参数是格式
                sheet.write(i, j, header_row[j])
        for k in range(len(data)):
            sheet.write(i+1, k, data[k])

    xl.save('download/UserInfo.xls')

然后,可以添加一个下载的链接:

from savepdf import saveUserInfo2PDF, saveUserInfo2EXCEL
   @app.route("/download/excel/userinfo")
   def downloadUserInfoEXCEL():
      saveUserInfo2EXCEL()
      return send_from_directory("download", filename="UserInfo.xls", as_attachment=True)

   @app.route("/download/pdf/userinfo")
   def downloadUserInfoPDF():
      saveUserInfo2PDF()
      return send_from_directory("download", filename="UserInfo.pdf", as_attachment=True)

注:download是项目路径下新建的文件夹。

猜你喜欢

转载自blog.csdn.net/qq_26460841/article/details/113825784