欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python第三方常用模塊openpyxl的簡(jiǎn)單介紹

 更新時(shí)間:2022年08月30日 10:49:46   作者:XWenXiang  
openpyxl模塊是一個(gè)讀寫Excel?2010文檔的Python庫(kù),如果要處理更早格式的Excel文檔,需要用到額外的庫(kù),openpyxl是一個(gè)比較綜合的工具,能夠同時(shí)讀取和修改Excel文檔,下面這篇文章主要給大家介紹了關(guān)于Python第三方常用模塊openpyxl的相關(guān)資料,需要的朋友可以參考下

openpyxl

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

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

創(chuàng)建文件

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

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

from openpyxl import Workbook
wb = Workbook()
# 一個(gè) excel 文件創(chuàng)建成功

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

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

from openpyxl import Workbook

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

Sheet 工作簿是自動(dòng)生成的

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

Worksheet.title —給工作簿重命名

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

from openpyxl import Workbook

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 = " " 修改標(biāo)題背景

from openpyxl import Workbook

wb = Workbook()
ws1 = wb.create_sheet('用戶信息表', 0)
ws1.sheet_properties.tabColor = 'FF6666'  # 將標(biāo)題背景改為指定RRGGBB顏色代碼
'''用代碼保存一下后,如下圖所示'''

變得更好看了…

Workbook.sheetname —查看 excel 所有工作簿

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

from openpyxl import Workbook

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

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

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

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

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

訪問(wèn)一個(gè)單元格

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

Worksheet[ ]

from openpyxl import Workbook

wb = Workbook()
ws1 = wb.create_sheet('用戶信息表', 0)
ws1['A1'] = 'XWenXiang'  # ws1['A1'] 代表的是該表中的 A1 位置,我們可以將數(shù)據(jù)直接賦值給它
'''用代碼保存一下后,如下圖所示'''

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

Worksheet.cell()

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

wb = Workbook()
ws1 = wb.create_sheet('用戶信息表', 0)
ws1.cell(row=4, column=2, value=10)  

此方法是通過(guò)指定坐標(biāo)的方式賦值,其中 row 參數(shù)代表行數(shù), column 代表列數(shù),value 是填入的數(shù)據(jù)。
'''用代碼保存一下后,如下圖所示'''

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

Worksheet.append()

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

from openpyxl import Workbook

wb = Workbook()
ws1 = wb.create_sheet('用戶信息表', 0)
ws1.append(['name', 'age', 'gender'])
ws1.append(['XWenXiang', '15', 'man'])  # 要用 [] 括起來(lái)
'''用代碼保存一下后,如下圖所示'''

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

公式

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

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

訪問(wèn)多個(gè)單元格

可以使用切片訪問(wèn)單元格范圍

x = ws['A1':'C2']
x1 = ws['C']
x2 = ws['C:D']
x3 = ws[10]
x4 = ws[5:10]

Worksheet.values —獲取單元格值

from openpyxl import Workbook

wb = Workbook()
ws1 = wb.create_sheet('用戶信息表', 0)
ws1.append(['name', 'age', 'gender'])
ws1.append(['XWenXiang', '15', 'man'])

for row in ws1.values:
    print(row)

打印結(jié)果:
('name', 'age', 'gender')
('XWenXiang', '15', 'man')

保存文件

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

在前面的代碼示例都沒(méi)有將保存代碼加入。

wb = Workbook()
wb.save('balances.xlsx')  # balances.xlsx 是保存的路徑,也就是文件名。
編輯完要保存才行。

打開(kāi)文件

openpyxl.load_workbook() —讀取 excel 文件

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

from openpyxl import load_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ù)

方式一
	from openpyxl import load_workbook
	
	wb = load_workbook('ex_a.xlsx', read_only=True, data_only=True)
	ws = wb['用戶信息表']  # 拿到工作薄對(duì)象
	print(ws['A1'].value)  # 取出工作薄對(duì)象中 A1 位置的值

方式二
	from openpyxl import load_workbook
	
	wb = load_workbook('ex_a.xlsx', read_only=True, data_only=True)
	ws = wb['用戶信息表']
	print(ws.cell(row=2, column=1).value)  # 通過(guò)行與列的形式來(lái)取值
	
方式三(逐行讀?。?
	from openpyxl import load_workbook
	
	wb = load_workbook('ex_a.xlsx', read_only=True, data_only=True)
	ws = wb['用戶信息表']
	for row in ws.rows:  # 獲取每一行的數(shù)據(jù)
	    for data in row:  # 獲取每一行中單元格的數(shù)據(jù)
	        print(data.value)  # 打印單元格的值

 總結(jié)

到此這篇關(guān)于Python第三方常用模塊openpyxl的文章就介紹到這了,更多相關(guān)Python openpyxl模塊介紹內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python實(shí)現(xiàn)控制臺(tái)打印的方法

    python實(shí)現(xiàn)控制臺(tái)打印的方法

    今天小編就為大家分享一篇python實(shí)現(xiàn)控制臺(tái)打印的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • 解決pytorch-gpu 安裝失敗的記錄

    解決pytorch-gpu 安裝失敗的記錄

    這篇文章主要介紹了解決pytorch-gpu 安裝失敗的記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python?ChainMap的使用詳解

    python?ChainMap的使用詳解

    chainMap是邏輯上合并兩個(gè)字典為一個(gè)邏輯單元,合并后的結(jié)構(gòu)實(shí)際上是一個(gè)列表,只是邏輯上是仍然為一個(gè)字典(并未生成新的),對(duì)此列表的操作模擬了各種字典的操作,這篇文章主要介紹了python?ChainMap的使用,需要的朋友可以參考下
    2023-03-03
  • python3+PyQt5實(shí)現(xiàn)柱狀圖

    python3+PyQt5實(shí)現(xiàn)柱狀圖

    這篇文章主要為大家詳細(xì)介紹了python3+PyQt5實(shí)現(xiàn)柱狀圖的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Django上線部署之IIS的配置方法

    Django上線部署之IIS的配置方法

    這篇文章主要介紹了Django上線部署之IIS的配置方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 淺析Python函數(shù)式編程

    淺析Python函數(shù)式編程

    在本篇文章中我們給大家分享了關(guān)于Python函數(shù)式編程的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友參考下。
    2018-10-10
  • pytorch?SummaryWriter保存日志的方法

    pytorch?SummaryWriter保存日志的方法

    這篇文章主要介紹了pytorch?SummaryWriter保存日志的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • Python利用公共鍵如何對(duì)字典列表進(jìn)行排序詳解

    Python利用公共鍵如何對(duì)字典列表進(jìn)行排序詳解

    這篇文章主要給大家介紹了關(guān)于Python利用公共鍵如何對(duì)字典列表進(jìn)行排序的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-05-05
  • 4種Python基于字段的不使用元類的ORM實(shí)現(xiàn)方法總結(jié)

    4種Python基于字段的不使用元類的ORM實(shí)現(xiàn)方法總結(jié)

    在 Python 中,ORM(Object-Relational Mapping)是一種將對(duì)象和數(shù)據(jù)庫(kù)之間的映射關(guān)系進(jìn)行轉(zhuǎn)換的技術(shù),本文為大家整理了4種不使用元類的簡(jiǎn)單ORM實(shí)現(xiàn)方式,需要的可以參考下
    2023-12-12
  • python基于爬蟲+django,打造個(gè)性化API接口

    python基于爬蟲+django,打造個(gè)性化API接口

    這篇文章主要介紹了python基于爬蟲+django,打造個(gè)性化API接口的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01

最新評(píng)論