openpyxl
Posted wxbn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openpyxl相关的知识,希望对你有一定的参考价值。
参考连接:https://openpyxl.readthedocs.io/en/stable/
openpyxl是一个Python库,用于读取/写入Excel xlsx / xlsm / xltx / xltm文件
安装 pip install openpyxl
在文件中插入图片的文件(缩略图) 需要安装 PIL 模块 我在另一篇博客有提
写入的方式
wb = Workbook() 创建文件对象
ws = wb.active 获取第一个 sheet 对其名字以及单元格的格式都可以进行控制
单个单元格中写入数据(用处不大 可以用于修改数据)
ws[‘A2‘]=数字 字符串 时间
多个单元个写入 可使用列表进行写入
比如 : 要写入的数据为
file_data = [[‘姓名‘, ‘性别‘, ‘写入时间‘, ‘得分‘]
[‘张三‘, ‘男‘, ‘2019-5.20‘, ‘90‘]
[‘李四‘, ‘女‘, ‘2019-5-20‘, ‘98‘]
。。。]
from openpyxl import Workbook
def export_fract_excel(data: list, file_name):
wb = Workbook() # 创建文件
ws = wb.active # 创建 sheet
# 列表导入
for i in data:
ws.append(i)
# 拼接导出名 可以自行拼接 可选
name = ‘‘.join([random.choice(string.ascii_letters) for _ in range(2)])
name = ‘{}_{}.xlsx‘.format(name,file_name)
try:
Bir_path = os.path.join(DefaultConfig.PATH, ‘Bir‘)
if not os.path.exists(Bir_path):
os.mkdir(Bir_path)
file_name = os.path.join(Bir_path, name)
wb.save(file_name )
return file_name
except Exception as e:
file_name = ‘‘
return file_name
def make_excel(file_data, file_name):
now = datetime.now()
fn = export_fract_excel(file_data, file_name)
r = make_response(send_file(fn, as_attachment=True))
return r
导出的数据格式
以上是关于openpyxl的主要内容,如果未能解决你的问题,请参考以下文章