python往excel写入数据
这里提供3种python3写入数据到Excel的方式。包含2种单个sheet页的数据覆盖写入方法和1种往已有sheet页的Excel中写入新的sheet页数据的方法,可2选其一即可。还有一种按行追加写入csv的方式供参考。
#!/usr/bin/python3
# -*-coding:utf-8-*-
import os
import xlrd
import xlwt
import openpyxl
from xlutils.copy import copy
"""
.. note::
1.整体而言,两种包对小文件的读写速度差别不大,
而面对较大文件时,xlrd/xlwt读写速度明显优于openpyxl,
但因为xlwt无法生成xlsx是个硬伤,
所以想要尽量提高效率又不影响结果时,可以考虑用xlrd读取,用openpyxl写入
2.调用方法时数据仅支持按[[],[],[]...]方式,其它格式的数据处理成该格式即可使用其中1个方法
3.提供一种写入csv的方式,也可以用excel打开,好处是方便用于txt方式处理
"""
def write_xls_by_xlwt(trg_path, sheet_name, title, data_list):
"""
使用xlwt按单元格的方式将数据写入EXCEL文件
:param trg_path: EXCEL结果文件(eg:"D:\\data\\result.xls")
:type trg_path: string
:param sheet_name: EXCEL文件sheet页的名称(eg:"Sheet1" 或 "Sheet2"等等)
:type sheet_name: string
:param title: 表头(eg:[] 或 ["序号","用户名","密码"])
:type title: list
:param data_list: 数据(eg:[["admin","123456"],["root","111"]...])
:type data_list: list
.. warning::
仅支持示例中的入参格式,最终保存的EXCEL必须是.xls的,不是能是.xlsx的
可重复运行,自动覆盖原写入数据
"""
"""新建一个excel对象"""
wbk = xlwt.Workbook()
"""添加一个sheet页"""
sheet = wbk.add_sheet(sheet_name)
"""无表头时数据从第一行开始写"""
start_row = -1
"""无序号时数据从第一列开始写"""
start_col = -1
"""无序号时不写入序号"""
row_number = "false"
"""写入sheet页的表头"""
if len(title) != 0:
start_row = 0
if title[0] in ["序号", "行号", "顺序"]:
row_number = "true"
start_col = 0
for col in range(len(title)):
sheet.write(0, col, title[col])
"""循环按单元格写入sheet的每行数据"""
for row in range(len(data_list))

这篇博客介绍了使用Python3将数据写入Excel的三种方式,包括覆盖现有sheet页数据、新增sheet页以及按行追加写入CSV文件的实现方法。
最低0.47元/天 解锁文章
2145

被折叠的 条评论
为什么被折叠?



