【Python学习】操作excel

一、简介

使用Python读、写、修改excel分别需要用到xlrd、xlwt以及xlutils模块,这几个模块使用pip安装即可。

二、读excel

import xlrd
book = xlrd.open_workbook(‘app_student.xls‘)
sheet = book.sheet_by_index(0)        # 根据下标来获取sheet页
sheet = book.sheet_by_name(‘sheet1‘)  # 根据sheet名来获取sheet页
print(sheet.cell(0,0))                # 指定excel里面的行和列来获取数据
print(sheet.cell(0,0).value)          # 加上value直接取到单元格里面的值
print(sheet.row_values(0))            # 获取到第几行的内容,放到一个list里面
print(sheet.col_values(0))            # 获取到第几列的数据,放到一个list里面
print(sheet.nrows)                    # 获取到excel里面一共有多少行
print(sheet.ncols)                    # 获取到excle里面一共有多少列
# 循环获取每行数据
for i in range(sheet.nrows):          
    print(sheet.row_values(i))
# 循环获取每列数据
for i in range(sheet.ncols):            
    print(sheet.col_values(i))

三、写excel

import xlwt
book = xlwt.Workbook()            # 新建一个excel
sheet = book.add_sheet(‘sheet1‘)  # 增加sheet页
sheet.write(0,0,‘姓名‘)            # 写入的内容,前面两个元素分别代表行和列
sheet.write(0,1,‘年龄‘)
sheet.write(0,2,‘性别‘)
book.save(‘stu.xls‘)              # 保存excel,结尾一定要用.xls

四、修改excel

import xlrd
from xlutils import copy              # xlutils模块导入方法需要这样用,直接导入模块不能用
book = xlrd.open_workbook(‘stu.xls‘)  # 先用xlrd模块,打开一个excel
new_book = copy.copy(book)            # 通过xlutils这个模块里面copy方法,复制一份excel
sheet = new_book.get_sheet(0)         # 获取sheet页
lis = [‘编号‘,‘名字‘,‘性别‘,‘年龄‘,‘地址‘,‘班级‘,‘手机号‘,‘金币‘]
# 使用enumerate可以直接取到list元素的下标和值从而进行循环写入excel
for col,filed in enumerate(lis):
    print(col,filed)
    sheet.write(0,col,filed)
    new_book.save(‘stu.xls‘)