1.读取Excel(需要安装xlrd):
#-*- coding: utf8 -*-
import xlrd
fname = "reflect.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
sh = bk.sheet_by_name("sheet1")
except:
PRint "no sheet in %s named sheet1" % fname
#获取行数
nrows = sh.nrows
#获取列数
ncols = sh.ncols
PRint "nrows %d, ncols %d" % (nrows,ncols)
#获取第一行第一列数据
cell_value = sh.cell_value(1,1)
#PRint cell_value
row_list = []
#获取各行数据
For i in range(1,nrows):
row_data = sh.row_values(i)
row_list.append(row_data)
2.写入Excel(需安装pyExcelerator)
from pyExcelerator import *
w = workbook() #创建一个工作簿
ws = w.add_sheet('hey, hades') #创建一个工作表
ws.write(0,0,'bit') #在1行1列写入bit
ws.write(0,1,'huang') #在1行2列写入huang
ws.write(1,0,'xuan') #在2行1列写入xuan
w.save('mini.xls') #保存
1.读取Excel(需要安装xlrd):
#-*- coding: utf8 -*-import xlrdfname = "reflect.xls"bk = xlrd.open_workbook(fname)shxrange = range(bk.nsheets)try:sh = bk.sheet_by_name("sheet1")except:PRint "no sheet in %s named sheet1" % fname#获取行数nrows = sh.nrows#获取列数ncols = sh.ncolsPRint "nrows %d, ncols %d" % (nrows,ncols)#获取第一行第一列数据cell_value = sh.cell_value(1,1)#PRint cell_valuerow_list = []#获取各行数据For i in range(1,nrows):row_data = sh.row_values(i)row_list.append(row_data)2.写入Excel(需安装pyExcelerator)
from pyExcelerator import *w = workbook() #创建一个工作簿ws = w.add_sheet('hey, hades') #创建一个工作表ws.write(0,0,'bit') #在1行1列写入bitws.write(0,1,'huang') #在1行2列写入huangws.write(1,0,'xuan') #在2行1列写入xuanw.save('mini.xls') #保存3.再举个自己写的读写Excel的例子
读取reflect.xls中的某些信息进行处理后写入mini.xls文件中。
4.现在我需要根据Excel文件中满足特定要求的apk的md5值来从服务器获取相应的apk样本,就需要这样做:
#-*-coding:utf8-*-import xlrdimport osimport shutilfname = "./Excelname.xls"bk = xlrd.open_workbook(fname)shxrange = range(bk.nsheets)try:#打开sheet1工作表sh = bk.sheet_by_name("sheet1")except:PRint "no sheet in %s named sheet1" % fname#获取行数nrows = sh.nrows#获取列数ncols = sh.ncols#PRint "nrows %d, ncols %d" % (nrows,ncols)#获取第一行第一列数据cell_value = sh.cell_value(1,1)#PRint cell_valuerow_list = []#range(起始行,结束行)For i in range(1,nrows):row_data = sh.row_values(i)if row_data[6] == "hxb":filename = row_data[3]+".apk"#PRint "%s %s %s" %(i,row_data[3],filename)filepath = r"./1/"+filenamePRint "%s %s %s" %(i,row_data[3],filepath)if os.path.exists(filepath):shutil.copy(filepath, r"./myapk/")补充一个使用xlwt3进行Excel文件的写操作。
import xlwt3if __name__ == '__mAIn__':datas = [['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h']]#二维数组file_path = 'd:\test.xlsx'wb = xlwt3.workbook()sheet = wb.add_sheet('test')#sheet的名称为test#单元格的格式style = 'pattern: pattern solID, Fore_colour yellow; '#背景颜色为黄色style += 'font: bold on; '#粗体字style += 'align: horz centre, vert center; '#居中header_style = xlwt3.easyxf(style)row_count = len(datas)col_count = len(datas[0])For row in range(0, row_count):col_count = len(datas[row])For col in range(0, col_count):if row == 0:#设置表头单元格的格式sheet.write(row, col, datas[row][col], header_style)else:sheet.write(row, col, datas[row][col])wb.save(file_path)输出的文件内容如下图:
注:以上代码在python 3.x版本测试通过。