openyxl两种情况下的写入用法

这篇博客介绍了在数据量较大时,如何利用openpyxl库替代xlwt来提高写入Excel的速度。文章详细展示了openpyxl的三个主要步骤:获取workbook、获取worksheet以及写入和保存数据。示例代码包括了直接插入数据和追加数据到已有Excel文件的方法,适用于处理千行乃至万行的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用xlwt写入Excel在数据量大的情况下速度十分堪忧,甚至会报错(String longer than 32767 characters),因此选择openyxl进行数据导入,千行数据或者万行数据速度还是可观。

openpyxl三个步骤

1、获取work book

2、获取 work sheet

3、再然后 获取单元格 进行操作

4、保存文件

一、数据的直接插入(Excel已存在,test.xlsx)

def data_write(file_path, datas):
    # ***********************************通过openyxl进行Excel的写入,没发现问题***************************************
    wb = openpyxl.Workbook()
    ws = wb.active  # 默认插在最后
    ws.title = 'demo_sheet1'
    ws['A1'] = '题目'
    ws['B1'] = "作者"
    ws['C1'] = "关键词"
    ws['D1'] = "url链接"
    ws['E1'] = "摘要"
    # 将数据写入第 i 行,第 j 列
    column = 1
    for i in datas.keys():
        for j in range(len(datas[i])):
            ws.cell(j + 2, column).value = datas[i][j]
        column = column + 1
    wb.save('test.xlsx')
    print('**********前部分数据写入成功**********')
    # *********************************************************************************************************

二、数据的追加(向已存Excel,test.xlsx)

xfile = openpyxl.load_workbook('test1.xlsx')
                new_sheet = xfile.worksheets[0]
                new_sheet.cell(cnt, 5).value = "None"
                xfile.save('test.xlsx')
                #cnt += 1
                # print('**********第{}次写入成功**********'.format(cnt - 2))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值