python学习之初始化excel表格并写入表头的方法,及在初始化创建的表格里追加内容的方法

初始化表格并写入表头的方法。
首先,需要安装xlwt:
在这里插入图片描述
实现效果如下:
在这里插入图片描述
具体代码:

import os
import ast
import xlwt


def init_excel(filename, sheet_name_titles):
    """
    初始化表格,并写入表头
    param: filename, 文件名称
    param: sheet_name_titles, 表单中的表头,格式为[{sheet1:[标题1,标题2, ....]},{sheet1:[标题1,标题2, ....]}]
    """
    try:
        excel = xlwt.Workbook(encoding='utf-8')
        for i in range(len(sheet_name_titles)):
            sheet_name = list(sheet_name_titles[i].keys())[0]
            sheet = excel.add_sheet(sheet_name)
            head_list = sheet_name_titles[i][sheet_name]
            print(head_list)
            head_name = []
            for k in head_list:
                print(k)
                head_name.append(k)
                print(head_name)
            for j in range(len(head_name)):
                sheet.write(0, j, head_name[j])
        excel.save(filename)
    except Exception as e:
        print(123)

# 如果要调用,如下:
init_excel("test.xls", [{"yeqian1": ["1", "11", "111"]}, {"yeqian2": ["2", "22"]}])

向表格中写入内容(追加),与上面的方法对照使用。
首先,安装xlrd、xlwt、xlutils库:
在这里插入图片描述
实现效果如下:
在这里插入图片描述
具体代码:

import xlwt
import xlrd
from xlutils.copy import copy

def write_excel(filename, sheet_name, sheet_index, words):
    """
    param:filename, 文件名称
    param:sheet_name, 页签名称
    param:sheet_index, 页签序号,从0开始
    param: words, 写入的页签及对应页签中一行的值,格式 [{"表头名称1":"输入内容1"}, {"表头名称2":"输入内容2"}, ......]
    """
    try:
        old_excel = xlrd.open_workbook(filename)  # 打开excel
        work_sheet = old_excel.sheet_by_name(sheet_name)  # 读取sheet 页
        now_numbers = work_sheet.nrows  # 获取现有行
        heads = work_sheet.row_values(0)  # 获取sheet页第0行的值,即表头的值
        new_excel = copy(old_excel)  # copy一个新的excel对象, 使对象xlrd变为xlwt
        print(new_excel)
        new_sheet = new_excel.get_sheet(sheet_index)  # 新建一个sheet
        i = now_numbers
        for j in range(len(words)):
            w = words[j][heads[j]]  # 得到对应列的值
            new_sheet.write(i, j, w)  # 写入新的sheet页
        new_excel.save(filename)
    except Exception as e:
        print(e)

# 引用方法
write_excel("test.xls", "yeqian1", 0, [{"cc": "ces"}, {"dd": "hhh"}, {"ee": "eeee"}])
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值