【python往excel写入数据】

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

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))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值