python - 如何使用 xlwt 将 python 列表导出到 excel 文件中?
问题描述
在这里,我试图将 python 列表导出到 excel 文件,但它无法正常工作。
该列表将是动态的。
response = HttpResponse(content_type='application/ms-excel')
response['Content-Disposition'] = 'attachment; filename="excle_file.xls"'
wb = xlwt.Workbook(encoding='utf-8')
ws = wb.add_sheet('datas', cell_overwrite_ok=True)
row_num = 0
font_style = xlwt.XFStyle()
font_style.font.bold = True
columns = ['col1', 'col2', 'col3', 'col4', 'col5']
for col_num in range(len(columns)):
ws.write(row_num, col_num, columns[col_num], font_style)
font_style = xlwt.XFStyle()
rows = [20, Decimal('50000.00'), Decimal('10.00'), Decimal('40000.00'), Decimal('90000.00'), 21, Decimal('31000.00'), Decimal('2000.00'), Decimal('41000.00'), Decimal('74000.00')]
for i,e in enumerate(rows):
ws.write(i,1, e)
wb.save(response)
return response
我想要这样的回应。
col1 col2 col3 col4 col5
20 50000 10 40000 90000
21 31000 2000 41000 74000
当前响应
col1 col2 col3 col4 col5
20
50000
10
40000
90000
21
31000
....
我还想根据文本增加列的大小?它将如何完成?
解决方案
根据文档https://xlwt.readthedocs.io/en/latest/api.html#xlwt.Worksheet.Worksheet ws.write 需要(行、列、值)。比较改变后得到的结果:
ws.write(i,1, e)
至:
print(i,1, e)
然后如果你输入它会如何变化:
print(int(i/5),int(i)%5, e)
推荐阅读
- kurento - OpenVidu:Coturn 服务器不用作 TURN 服务器
- amazon-web-services - 如何在 AWS Lambda 上解析 Mailgun API 转发的多部分/表单数据?
- javascript - 如何使用 Javascript 将我的切换设置为关闭?
- java - 有没有办法立即隐藏当前显示的工具提示?
- php - 如何在laravel中的数组数据中排列
- python - 找出正在运行的浏览器类型
- google-apps-script - 如何使用谷歌脚本删除 gmail 邮件的收件箱标签?
- javascript - 如何防止博主增加缩略图图像大小?
- excel - 列中单元格的大写字母
- html - 无论网络状况如何,如何在 WebRTC 中强制执行特定分辨率?