python操作excel表格的方法
python操作excel表格的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
Python对Excel的读写主要有xlrd、xlwt、xlutils、openpyxl、xlsxwriter几种。
python学习网,大量的免费python视频教程,欢迎在线学习!
1.xlrd主要是用来读取excel文件
importxlrddata=xlrd.open_workbook('abcd.xls')#打开xls文件table=data.sheets()[0]#打开第一张表nrows=table.nrows#获取表的行数foriinrange(nrows):#循环逐行打印ifi==0:#跳过第一行continueprint(table.row_values(i)[:13])#取前十三列
示例2:
#coding=utf-8########################################################filename:test_xlrd.py#author:defias#date:xxxx-xx-xx#function:读excel文件中的数据#######################################################importxlrd#打开一个workbookworkbook=xlrd.open_workbook('E:\\Code\\Python\\testdata.xls')#抓取所有sheet页的名称worksheets=workbook.sheet_names()print('worksheetsis%s'%worksheets)#定位到sheet1worksheet1=workbook.sheet_by_name(u'Sheet1')"""#通过索引顺序获取worksheet1=workbook.sheets()[0]#或worksheet1=workbook.sheet_by_index(0)""""""#遍历所有sheet对象forworksheet_nameinworksheets:worksheet=workbook.sheet_by_name(worksheet_name)"""#遍历sheet1中所有行rownum_rows=worksheet1.nrowsforcurr_rowinrange(num_rows):row=worksheet1.row_values(curr_row)print('row%sis%s'%(curr_row,row))#遍历sheet1中所有列colnum_cols=worksheet1.ncolsforcurr_colinrange(num_cols):col=worksheet1.col_values(curr_col)print('col%sis%s'%(curr_col,col))#遍历sheet1中所有单元格cellforrowninrange(num_rows):forcolninrange(num_cols):cell=worksheet1.cell_value(rown,coln)printcell"""#其他写法:cell=worksheet1.cell(rown,coln).valueprintcell#或cell=worksheet1.row(rown)[coln].valueprintcell#或cell=worksheet1.col(coln)[rown].valueprintcell#获取单元格中值的类型,类型0empty,1string,2number,3date,4boolean,5errorcell_type=worksheet1.cell_type(rown,coln)printcell_type"""
2.xlwt主要是用来写excel文件
importxlwtwbk=xlwt.Workbook()sheet=wbk.add_sheet('sheet1')sheet.write(0,1,'testtext')#第0行第一列写入内容wbk.save('test.xls')
3.xlutils结合xlrd可以达到修改excel文件的目的
importxlrdfromxlutils.copyimportcopyworkbook=xlrd.open_workbook(u'有趣装逼每日数据及趋势.xls')workbooknew=copy(workbook)ws=workbooknew.get_sheet(0)ws.write(3,0,'changed!')workbooknew.save(u'有趣装逼每日数据及趋势copy.xls')
4.openpyxl可以对excel文件进行读写操作
fromopenpyxlimportWorkbookfromopenpyxlimportload_workbookfromopenpyxl.writer.excelimportExcelWriterworkbook_=load_workbook(u"新歌检索失败1477881109469.xlsx")sheetnames=workbook_.get_sheet_names()#获得表单名字printsheetnamessheet=workbook_.get_sheet_by_name(sheetnames[0])printsheet.cell(row=3,column=3).valuesheet['A1']='47'workbook_.save(u"新歌检索失败1477881109469_new.xlsx")wb=Workbook()ws=wb.activews['A1']=4wb.save("新歌检索失败.xlsx")
示例2:
importopenpyxl#新建文件workbook=openpyxl.Workbook()#写入文件sheet=workbook.activesheet['A1']='A1'#保存文件workbook.save('test.xlsx')
5.xlsxwriter可以写excel文件并加上图表
importxlsxwriterdefget_chart(series):chart=workbook.add_chart({'type':'line'})forsesinseries:name=ses["name"]values=ses["values"]chart.add_series({'name':name,'categories':'A2:A10','values':values})chart.set_size({'width':700,'height':350})returnchartif__name__=='__main__':workbook=xlsxwriter.Workbook(u'H5应用中心关键数据及趋势.xlsx')worksheet=workbook.add_worksheet(u"每日PV,UV")headings=['日期','平均值']worksheet.write_row('A1',headings)index=0forrowinrange(1,10):forcomin[0,1]:worksheet.write(row,com,index)index+=1series=[{"name":"平均值","values":"B2:B10"}]chart=get_chart(series)chart.set_title({'name':'每日页面分享数据'})worksheet.insert_chart('H7',chart)workbook.close()
示例2:
importxlsxwriterasxw#新建excelworkbook=xw.Workbook('myexcel.xlsx')#新建工作薄worksheet=workbook.add_worksheet()#写入数据worksheet.wirte('A1',1)#关闭保存workbook.close()
合并表格实例:
#coding:utf-8importxlsxwriterimportxlrd#新建excelworkbook=xlsxwriter.Workbook('广东.xlsx')#新建工作薄worksheet=workbook.add_worksheet()count=1worksheet.write("A%s"%count,"公司名称")worksheet.write("B%s"%count,"法人")worksheet.write("C%s"%count,"电话")worksheet.write("D%s"%count,"注册资金")worksheet.write("E%s"%count,"注册时间")count+=1foriinrange(1,153):data=xlrd.open_workbook('ah(%s).xls'%i)#打开xls文件table=data.sheets()[0]#打开第一张表nrows=table.nrows#获取表的行数foriinrange(nrows):#循环逐行打印ifi==0:#跳过第一行continue#print(table.row_values(i)[:5])#取前十三列print(count,table.row_values(i)[:5][0])#写入数据#设定第一列(A)宽度为20像素A:E表示从A到Eworksheet.set_column('A:A',30)worksheet.set_column('B:E',20)worksheet.write("A%s"%count,table.row_values(i)[:5][0])worksheet.write("B%s"%count,table.row_values(i)[:5][1])worksheet.write("C%s"%count,table.row_values(i)[:5][2])worksheet.write("D%s"%count,table.row_values(i)[:5][3])worksheet.write("E%s"%count,table.row_values(i)[:5][4])count+=1#关闭保存workbook.close()
感谢各位的阅读!看完上述内容,你们对python操作excel表格的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。