首页 > 编程语言 > 详细

python学习笔记(十):操作excel

时间:2018-01-06 23:50:58      阅读:298      评论:0      收藏:0      [点我收藏+]

一、python操作excel,python操作excel使用xlrd、xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的。这几个模块使用pip安装即可,下面是这几个模块的使用。

 二、xlrd模块,xlrd模块用来读excel,具体用法如下

            import xlrd
            #打开excel
            wb=xlrd.open_workbook(abc.xlsx)#打开的这个excel必须存在,否则会报错
            #获取所有sheet页的名字
            print(wb.sheet_names())
            #按名字查找第二张表单
            # sheet=wb.sheet_by_name(‘abc2‘)#根据sheet页的名字获取sheet页
            sheet = wb.sheet_by_index(0)#根据sheet页的索引获取sheet页
            #获取sheet页的行数和列数
            print(sheet.nrows)
            print(sheet.ncols)
            #打印每行信息
            for rownum in range(sheet.nrows):  #循环取每行的数据
                print(sheet.row_values(rownum))#取每行的数据
            #按照索引打印对应单元格内容
            cell_A2=sheet.cell(0,1).value#获取指定单元格的值,第一个值是列,第二个值是行
            print(cell_A2)

三、xlwt模块,xlwt模块用来写excel,写一个新的excel

        import xlwt
        title = [
            姓名,年龄,性别,分数
        ]
        stus = [[mary,20,,89.9],[mary,20,,89.9],[mary,20,,89.9],[mary,20,,89.9]]
        #新建一个excel对象
        wbk = xlwt.Workbook()
        #添加一个名为 课程表的sheet页
        sheet = wbk.add_sheet(stu)
        for i in  range(len(title)):#写入表头
            sheet.write(0,i,title[i])#写入每行,第一个值是行,第二个值是列,第三个是写入的值
        for i in range(len(stus)):
            if i !=0:#如果不是表头的话
                for j in range(4):
                    sheet.write(i,j,stus[i][j])#循环写入每行数据
        #保存数据到‘test.xls’文件中
        wbk.save(szz.xls)#保存excel必须使用后缀名是.xls的,不是能是.xlsx的

四、xlutils模块xlutils模块用来修改excel的内容,不能直接修改原来的excel内容,必须得先复制一个新的excel,然后对这个新的excel进行修改,用法如下:

        from xlrd import open_workbook#导入xlrd模块中打开excel模块    
        from xlutils.copy import copy#导入xlutils模块的复制excel模块
        rb = open_workbook(szz.xls)
        #通过sheet_by_index()获取的sheet
        rs = rb.sheet_by_index(0)
        #复制一个excel
        wb = copy(rb)
        #通过获取到新的excel里面的sheet页
        ws = wb.get_sheet(0)
        ws.write(1, 0, Lily)#写入excel,第一个值是行,第二个值是列
        wb.save(szz_new.xls)#保存新的excel,保存excel必须使用后缀名是.xls的,不是能是.xlsx的

 

python学习笔记(十):操作excel

原文:https://www.cnblogs.com/hanzhao1987/p/8215611.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!