Python操作Excel,能自动的绝不手动

Excel的使用是一项必备技能,Python拥有强大的处理Excel的能力,有很多库可以处理Excel,这里介绍一个常用的xlrd处理基本的Excel。
【Python操作Excel,能自动的绝不手动】Excel文件的操作无非读和写,中间外加一个操作,从Excel中读取数据(读取),操作数据,再放回Excel(写入)。写入可以视情况而定,你要实在不想写回去也可以不写……
这里我们需要两个库。

import test #创造数据,是我自己写的爬虫,可以参见爬虫那篇import xlrd #读readimport xlwt #写write

1.写Excel
由于还没有Excel文件,所以先介绍写文件来创建一个Excel文件。
def write(filename,sheetname,data):excel = xlwt.Workbook()# 创建一个工作簿sheet = excel.add_sheet(sheetname)# 创建一个工作表row = 0for value in data:sheet.write(row, 0, value)sheet.write(row, 1, data[value])row = row + 1excel.save(filename)

主要的函数就是上面的代码了,其实和我们手动操作Excel一致:
  • 第2行先打开一个Excel
  • 第3行创建一个工作簿,主要是write函数,write(i,j,data),就是在创建的sheet中的第i行第j列写入数据data
  • 第4-8行开始把data中的数据写到该工作簿中,注意写入excel中的数据只能数字符创类型的,如果不是,需要做一个强制类型转化。
  • 最后一行将Excel保存,保存到了代码的工作目录中,当然也可以指定保存目录
Python操作Excel,能自动的绝不手动
文章图片

2. 读取Excel
def read(filename,sheetname):excel = xlrd.open_workbook(filename)table = excel.sheet_by_name(sheetname)#table = excel.sheet_by_index(0)nrows = table.nrowsncols = table.ncolsdata = https://www.it610.com/article/[]for i in range(nrows):arr = []for j in range(ncols):arr.append(table.cell_value(i,j))data.append(arr)return data

上面就是读取Excel的代码,读取是比较简单的
  • 第2行打开excel文件
  • 第3行选择工作簿,有两种选择方式
  • 第5、6行获取excel中数据的行数和列数
  • 第7-12行把数据读出来即可

Python读取Excel是比较简单的,将数据读取来之后,剩下的就和Excel无关了,用Python代码随意操作、计算即可。

    推荐阅读