python使用Openpyxl操作Excel文件的實(shí)現(xiàn)
openpyxl 是一個(gè)用于在 Python 中讀取和寫入 Excel 文件的優(yōu)秀庫(kù)。
它支持 .xlsx 和 .xlsm 格式,非常適合在 Ubuntu 系統(tǒng)上進(jìn)行 Excel 數(shù)據(jù)處理和自動(dòng)化操作。
本篇博客將介紹一些常用的 openpyxl 命令。
安裝
安裝Python3
首先,你需要安裝 openpyxl 和 Python。在 Ubuntu 上,可以通過以下命令安裝:
sudo apt install python3
安裝 openpyxl
pip3 install openpyxl
基礎(chǔ)操作
1. 引入
from openpyxl import Workbook # 新建文件的引入 from openpyxl import load_workbook # 加載已存在文件的引入
2. 創(chuàng)建工作簿和工作表
wb = Workbook() # 創(chuàng)建一個(gè)新的工作簿 ws = wb.active # 獲取活動(dòng)工作表 wb.create_sheet("Sheet2") # 創(chuàng)建一個(gè)新的工作表并命名 ws.title = "NewSheet" # 修改工作表名
3. 寫入數(shù)據(jù)
ws['A1'] = 'Hello, World!' ws['B1'] = 42 ws['C1'] = 3.14 cell = ws.cell(row=1, column=1, value="New Value")
4. 保存工作簿
wb.save('example.xlsx')
5. 加載已存在的Excel
wb = load_workbook('example.xlsx') ws = wb.active
6. 讀取單元格的值
cell_a1 = ws['A1'].value cell_b1 = ws['B1'].value cell_c1 = ws['C1'].value print(f"A1: {cell_a1}, B1: {cell_b1}, C1: {cell_c1}")
7. 選擇工作表
ws1 = wb.worksheets[0] # 通過索引選擇工作表 ws2 = wb["Sheet2"] # 通過名稱選擇工作表
樣式和格式化
1. 引入
from openpyxl.styles import Font, Alignment # 樣式操作的引入
2. 設(shè)置字體
font = Font(name='Arial', size=14, bold=True, italic=False) ws['A1'].font = font
3. 設(shè)置邊框
border = Border(left=Side(border_style='thin'), right=Side(border_style='thin'), top=Side(border_style='thin'), bottom=Side(border_style='thin')) ws['A1'].border = border
4. 填充
fill = PatternFill(start_color="FF0000", end_color="FF0000", fill_type="solid") ws['A1'].fill = fill
5. 設(shè)置數(shù)字格式
ws['B1'].number_format = '0.00%' # 百分比格式 ws['C1'].number_format = 'YYYY-MM-DD' # 日期格式
6. 數(shù)據(jù)驗(yàn)證
from openpyxl.worksheet.datavalidation import DataValidation dv = DataValidation(type="list", formula1='"Apple,Banana,Cherry"', allow_blank=True) # 創(chuàng)建數(shù)據(jù)驗(yàn)證對(duì)象 ws.add_data_validation(dv) dv.add('A1') # 將數(shù)據(jù)驗(yàn)證應(yīng)用到單元格
7. 公式操作
可以在單元格中插入公式:
ws['D1'] = "=SUM(A1:A3)"
性能優(yōu)化
1. read_only/write_only
對(duì)于大的 Excel 文件,可以使用read_only來提高讀取效率, 使用 write_only 來優(yōu)化寫入性能
from openpyxl import load_workbook wb = load_workbook('example.xlsx', read_only=True) # 使用只讀模式加載工作簿
from openpyxl import Workbook wb = Workbook(write_only=True) # 使用寫入模式創(chuàng)建工作簿 ws = wb.create_sheet()
2. 遍歷單元格
可以使用 .rows 和 .columns 遍歷工作表中的行和列:
for row in ws.iter_rows(min_row=1, max_row=5, min_col=1, max_col=3): for cell in row: print(cell.value, end=" ")
到此這篇關(guān)于python使用Openpyxl操作Excel文件的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python Openpyxl操作Excel內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python使用pandas和openpyxl讀取Excel表格的方法詳解
- python使用openpyxl打開及讀取excel表格過程
- python使用openpyxl實(shí)現(xiàn)對(duì)excel表格相對(duì)路徑的超鏈接的創(chuàng)建方式
- python openpyxl提取Excel圖片實(shí)現(xiàn)原理技巧
- python?openpyxl操作Excel的安裝使用
- python使用openpyxl庫(kù)處理Excel文件詳細(xì)教程
- Python通過OpenPyXL處理Excel的完整教程
- python使用openpyxl庫(kù)讀取Excel文件數(shù)據(jù)
- python如何通過openpyxl讀寫Excel文件
- Python?Excel操作從零學(xué)習(xí)掌握openpyxl用法
- 使用python中的openpyxl操作excel詳解
- python操作Excel神器openpyxl看這一篇就夠了
相關(guān)文章
python 反編譯exe文件為py文件的實(shí)例代碼
這篇文章主要介紹了python 反編譯exe文件為py文件的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06解決Python下json.loads()中文字符出錯(cuò)的問題
今天小編就為大家分享一篇解決Python下json.loads()中文字符出錯(cuò)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12跨平臺(tái)python異步回調(diào)機(jī)制實(shí)現(xiàn)和使用方法
這篇文章主要介紹了python異步回調(diào)機(jī)制的實(shí)現(xiàn)方法,提供了使用方法代碼2013-11-11python獲取代碼運(yùn)行時(shí)間的實(shí)例代碼
今天小編就為大家分享一篇python獲取代碼運(yùn)行時(shí)間的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06Python實(shí)現(xiàn)簡(jiǎn)單的索引排序與搜索功能
這篇文章主要介紹了Python實(shí)現(xiàn)簡(jiǎn)單的索引排序與搜索功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04python+ffmpeg視頻并發(fā)直播壓力測(cè)試
這篇文章主要為大家詳細(xì)介紹了python+ffmpeg視頻并發(fā)直播壓力測(cè)試,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03Python實(shí)現(xiàn)多張圖片合成文字的效果
前段時(shí)間看到有人問如何使用Python實(shí)現(xiàn)多張圖片組成文字的效果?覺得還挺有意思,于是嘗試做了一下,剛好趕上端午節(jié),所以打算從網(wǎng)上下載1000張王心凌的照片,組成端午安康的字樣,感興趣的可以了解一下2022-06-06Python xml、字典、json、類四種數(shù)據(jù)類型如何實(shí)現(xiàn)互相轉(zhuǎn)換
這篇文章主要介紹了Python xml、字典、json、類四種數(shù)據(jù)類型如何實(shí)現(xiàn)互相轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05Python爬蟲實(shí)例之2021貓眼票房字體加密反爬策略(粗略版)
這篇文章主要介紹了Python爬蟲實(shí)例之2021貓眼票房字體加密反爬策略(粗略版),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02