Python第三方常用模塊openpyxl的簡單介紹_第1頁
Python第三方常用模塊openpyxl的簡單介紹_第2頁
Python第三方常用模塊openpyxl的簡單介紹_第3頁
Python第三方常用模塊openpyxl的簡單介紹_第4頁
Python第三方常用模塊openpyxl的簡單介紹_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第Python第三方常用模塊openpyxl的簡單介紹目錄openpyxl創(chuàng)建文件Workbook()創(chuàng)建excel文件Workbook.create_sheet()創(chuàng)建excel工作簿W(wǎng)orksheet.title給工作簿重命名ws.sheet_properties.tabColor=修改標題背景Workbook.sheetname查看excel所有工作簿W(wǎng)orkbook.copy_worksheet()創(chuàng)建工作表的副本獲取修改數(shù)據(jù)訪問一個單元格Worksheet[]Worksheet.cell()Worksheet.append()訪問多個單元格保存文件打開文件openpyxl.load_workbook()讀取excel文件讀取工作簿數(shù)據(jù)總結(jié)

openpyxl

openpyxl模塊屬于第三方模塊,是一個在python中能夠處理excel文件的模塊,還有比較出名的是xlrd、xlwt分別控制excel文件的讀寫,這倆個能夠兼容所有版本的文件。openpyxl針對excel2003版本之前的兼容性可能不好但是功能更加強大。

excel文件的版本及后綴

2003版本之前excel的文件后綴是xls

2003版本之后excel的文件后綴是xlsx、csv

創(chuàng)建文件

Workbook()創(chuàng)建excel文件

使用openpyxl創(chuàng)建文件。只需導(dǎo)入Workbook類

fromopenpyxlimportWorkbook

wb=Workbook()

#一個excel文件創(chuàng)建成功

Workbook.create_sheet()創(chuàng)建excel工作簿

Workbook.create_sheet()可以創(chuàng)建自定義名稱的工作簿。括號里的參數(shù)是工作簿名稱,還有一個參數(shù)是工作簿的位置,也可以不寫

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)#創(chuàng)建了一個用戶信息表并放在第一位,如下圖

Sheet工作簿是自動生成的

可以創(chuàng)建多個工作簿,并且它們按順序排列。

Worksheet.title給工作簿重命名

使用Worksheet.title屬性更改表名稱

fromopenpyxlimportWorkbook

wb=Workbook()#創(chuàng)建excel文件

ws1=wb.create_sheet('用戶信息表',0)#創(chuàng)建工作簿用戶信息表放在第一位

ws2=wb.create_sheet('bank_info')#創(chuàng)建工作簿bank_info

ws1.title='user_info'#更改工作簿用戶信息表的名稱

'''用代碼保存一下后,如下圖所示'''

用戶信息表被改名成user_info

ws.sheet_properties.tabColor=修改標題背景

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)

ws1.sheet_properties.tabColor='FF6666'#將標題背景改為指定RRGGBB顏色代碼

'''用代碼保存一下后,如下圖所示'''

變得更好看了

Workbook.sheetname查看excel所有工作簿

返回包含excel文件下所有工作簿名稱的列表

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)

print(wb.sheetnames)

打印結(jié)果['用戶信息表','Sheet']

Workbook.copy_worksheet()創(chuàng)建工作表的副本

Workbook.copy_worksheet()方法可以在單個工作簿中創(chuàng)建工作表的副本。僅復(fù)制單元格(包括值、樣式、超鏈接和注釋)和某些工作表屬性(包括尺寸、格式和屬性)。不會復(fù)制所有其他工作簿/工作表屬性-例如圖像、圖表。

獲取修改數(shù)據(jù)

訪問一個單元格

在excel中可以通過位置找到里面的內(nèi)容,同樣使用代碼也能通過位置找到內(nèi)容。

Worksheet[]

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)

ws1['A1']='XWenXiang'#ws1['A1']代表的是該表中的A1位置,我們可以將數(shù)據(jù)直接賦值給它

'''用代碼保存一下后,如下圖所示'''

此時的A1被填入內(nèi)容XWenXiang

Worksheet.cell()

----'除了直接獲取位置還可以使用Worksheet.cell()方法'-----

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)

ws1.cell(row=4,column=2,value=10)

此方法是通過指定坐標的方式賦值,其中row參數(shù)代表行數(shù),column代表列數(shù),value是填入的數(shù)據(jù)。

'''用代碼保存一下后,如下圖所示'''

在第2列第4行的位置填入數(shù)字10

Worksheet.append()

Worksheet.append()可以同時寫入多個數(shù)據(jù)。

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)

ws1.append(['name','age','gender'])

ws1.append(['XWenXiang','15','man'])#要用[]括起來

'''用代碼保存一下后,如下圖所示'''

批量寫入數(shù)據(jù),重復(fù)數(shù)據(jù)還可以加一個循環(huán)寫入。

公式

模塊里使用的公式和excel中的公式是一樣的

ws1['A6']='=sum(A4:A5)'#對A4和A5進行求和并寫入到A6

訪問多個單元格

可以使用切片訪問單元格范圍

x=ws['A1':'C2']

x1=ws['C']

x2=ws['C:D']

x3=ws[10]

x4=ws[5:10]

Worksheet.values獲取單元格值

fromopenpyxlimportWorkbook

wb=Workbook()

ws1=wb.create_sheet('用戶信息表',0)

ws1.append(['name','age','gender'])

ws1.append(['XWenXiang','15','man'])

forrowinws1.values:

print(row)

打印結(jié)果:

('name','age','gender')

('XWenXiang','15','man')

保存文件

保存工作簿最簡單、最安全的方法是使用對象的Workbook.save()方法Workbook。

在前面的代碼示例都沒有將保存代碼加入。

wb=Workbook()

wb.save('balances.xlsx')#balances.xlsx是保存的路徑,也就是文件名。

編輯完要保存才行。

打開文件

openpyxl.load_workbook()讀取excel文件

和Workbook寫入一樣,使用openpyxl.load_workbook()可以打開現(xiàn)有工作簿。

fromopenpyxlimportload_workbook#導(dǎo)入load_workbook

wb=load_workbook('ex_a.xlsx',read_only=True,data_only=True)#ex_a.xlsx是文件名

print(wb.sheetnames)#打印所有工作簿的名稱

讀取工作簿數(shù)據(jù)

方式一

fromopenpyxlimportload_workbook

wb=load_workbook('ex_a.xlsx',read_only=True,data_only=True)

ws=wb['用戶信息表']#拿到工作薄對象

print(ws['A1'].value)#取出工作薄對象中A1位置的值

方式二

fromopenpyxlimportload_workbook

wb=load_workbook('ex_a.xlsx',read_only=True,data_only=True)

ws=wb['用戶信息表']

print(ws.cell(row=2,column=1).value)#通過行與列的形式來取值

方式三(逐行讀?。?/p>

fromopenpyxlimp

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論