欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python—处理Excel表格

程序员文章站 2022-03-10 12:41:48
一、使用xlrd和xlwt这两个库来处理excel,即xlrd是读excel的库,xlwt是写excel的库 1.使用 xlrd 读取Excel数据 2.使用 xlwt 写入Excel数据 write(x, y, string):x表示行,y表示列,string表示要写入的单元格内容。 write_ ......

一、使用xlrd和xlwt这两个库来处理excel,即xlrd是读excel的库,xlwt是写excel的库

1.使用 xlrd 读取excel数据

2.使用 xlwt 写入excel数据

  • write(x, y, string):x表示行,y表示列,string表示要写入的单元格内容。
  • write_merge(x, x + m, y, w + n, string, sytle):x表示行,y表示列,m表示跨行个数,n表示跨列个数,string表示要写入的单元格内容,style表示单元格样式。其中,x,y,w,h,都是以0开始计算的。

  • 示例:sheet1.write_merge(21,21,0,1,u'合计',set_style('times new roman',220,true)):即在22行合并第1,2列,合并后的单元格内容为"合计",并设置了style。
# -*- coding:utf-8 -*-
import xlwt

def write_excel():
    book = xlwt.workbook()           # 新建一个excel

    sheet1 = book.add_sheet('学生1')  # 添加一个sheet页,创建第一个sheet:学生1
    data = [['姓名', '年龄', '性别', '分数'], ['mary', 20, '女', 90], ['jack', 26, '男', 96]]
    raw = 0               # 控制行
    for stu in data:      # 循环写入
        col = 0           # 控制列
        for s in stu:
            sheet1.write(raw, col, s)
            col += 1
        raw += 1
    sheet1.write_merge(3, 3, 1, 3, '待确认')   # 合并列单元格,第2列到第4列合并
    sheet1.write_merge(1, 3, 4, 4, '打游戏')   # 合并行单元格,第2行到第4行合并

    sheet2 = book.add_sheet('学生2', cell_overwrite_ok=true)  # 添加一个sheet页,创建第二个sheet:学生2
    row0 = ["姓名", "年龄", "爱好", "出生日期"]
    col0 = ["张三", "李四", "小明", "小红", "无名"]
    for i in range(0, len(row0)):  # 写第一行
        sheet2.write(0, i, row0[i])
    for i in range(0, len(col0)):  # 写第一列
        sheet2.write(i + 1, 0, col0[i])
    sheet2.write(1, 3, '91/12/12')
    sheet2.write_merge(5, 5, 2, 3, u'暂无')        # 合并列单元格
    sheet2.write_merge(2, 3, 3, 3, u'94/05/06')   # 合并行单元格

    book.save('d:\excel3.xls')                    # 保存文件

if __name__ == "__main__":
    write_excel()