微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python针对excel的操作技巧

这篇文章主要介绍了python针对excel的操作方法,需要的朋友可以参考下

一. openpyxl读

95%的时间使用的是这个模块,目前excel处理的模块,只有这个还在维护

1、workBook

workBook=openpyxl.load_workbook('path(.xlsx)').encode('gbk') print workBook

2、sheet

sheetList=workBook.get_sheet_names() 获取所有sheet的名称,保存为列表格式 print sheetList

3、cell

(1)sheet1=workBook.get_sheet_by_name('test1') 获取一个具体的sheet

(2)rowsData=sheet1.rows 获取所有的行,返回一个迭代器

行和列都是从1开始的,不是从0

for i in rowsData: #print i #print type(i) 元组格式 for j in i: print j.coordinate(每一个cell的下表),j.value(cell的值), 打印出所有cell的内容 print

(3)colsData=sheet1.columns 获取所有的列,并返回迭代器

(4)更新某个单元格

j.value=u'重新赋值' workBook.save(path(之前操作的路径))

 4、单元格的定位

两种方式:

(1)c1=sheet1.cell(coordinate='B2')

print c1.value

(2)c2=sheet1['B2'] 字典格式:通过key值找value

print c2.value

(3)c1=sheet1.cell(row=2,column=3) 第二行第三列

print c1.value

(4)切片,获取一个区域的单元格

area=sheet1['C2':'D7'] 得到一个元组 print area 元组里面嵌套元组 for i in area: # print i for j in i: pass # print j print j.coordinate, j.value = j.coordinate print

二、写单元格

1、写workBook

workBook=openpyxl.Workbook()

2、sheet

sheet1=workBook.create_sheet(title='sheet1',index=0) index=0 定位第几个sheet

3、cell

sheet1['B6'].value=u'testB6'

workBook.save(path)

4、在下一空行整行写入

sheet1.append([1,2,3,4,5,6,7])

三、excel相关的样式操作

import openpyxl from openpyxl.styles import PatternFill,Alignment,Font,colors workBook=openpyxl.Workbook() sheet1=workBook.create_sheet('test')

1、合并单元格,两种方式

sheet1.merge_cells(range_string='A2:G2') sheet1.merge_cells(start_row=2,start_column='A',end_row=2,end_column='G')

2、设置排版样式:对齐方式

al=Alignment(horizontal='center') horizontal:left,center,right sheet1['A2'].alignment=al

3、设置背景颜色

fill=PatternFill(patternType='solid',fgColor=colors.BLUE) sheet1['A2'].fill=fill

4、字体的颜色

sheet1[A2].value font=Font(colors=colors.WHITE,size=14) sheet1['A2'].font=font

总结

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐