Excel的使用是一项必备技能,Python拥有强大的处理Excel的能力,有很多库可以处理Excel,这里介绍一个常用的xlrd处理基本的Excel。
Excel文件的操作无非读和写,中间外加一个操作,从Excel中读取数据(读取),操作数据,再放回Excel(写入)。写入可以视情况而定,你要实在不想写回去也可以不写……
这里我们需要两个库。
import test #创造数据,是我自己写的爬虫,可以参见爬虫那篇
import xlrd #读read
import xlwt #写write
1.写Excel
由于还没有Excel文件,所以先介绍写文件来创建一个Excel文件。
def write(filename,sheetname,data):
excel = xlwt.Workbook() # 创建一个工作簿
sheet = excel.add_sheet(sheetname) # 创建一个工作表
row = 0
for value in data:
sheet.write(row, 0, value)
sheet.write(row, 1, data[value])
row = row + 1
excel.save(filename)
主要的函数就是上面的代码了,其实和我们手动操作Excel一致:
-
第2行先打开一个Excel
-
第3行创建一个工作簿,主要是write函数,write(i,j,data),就是在创建的sheet中的第i行第j列写入数据data
-
第4-8行开始把data中的数据写到该工作簿中,注意写入excel中的数据只能数字符创类型的,如果不是,需要做一个强制类型转化。
-
最后一行将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.nrows
ncols = table.ncols
data = []
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代码随意操作、计算即可。