一. openpyxl讀
95%的時間使用的是這個模塊,目前excel處理的模塊,只有這個還在維護
1、workBook
workBook=openpyxl.load_workbook('path(.xlsx)').encode('gbk')print workBook2、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的內(nèi)容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)切片,獲取一個區(qū)域的單元格
area=sheet1['C2':'D7'] 得到一個元組print area 元組里面嵌套元組for i in area:# print ifor j in i:pass# print jprint j.coordinate,j.value = j.coordinateprint
二、寫單元格
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相關(guān)的樣式操作
import openpyxlfrom openpyxl.styles import PatternFill,Alignment,Font,colorsworkBook=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、設(shè)置排版樣式:對齊方式
al=Alignment(horizontal='center') horizontal:left,center,rightsheet1['A2'].alignment=al
3、設(shè)置背景顏色
fill=PatternFill(patternType='solid',fgColor=colors.BLUE)sheet1['A2'].fill=fill
4、字體的顏色
sheet1[A2].valuefont=Font(colors=colors.WHITE,size=14)sheet1['A2'].font=font
總結(jié)
以上所述是小編給大家介紹的python針對excel的操作方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林站長站網(wǎng)站的支持!
新聞熱點
疑難解答
圖片精選