最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中處理Excel的5個(gè)神仙庫的使用指南

 更新時(shí)間:2025年11月08日 11:42:13   作者:程序員晚?xiàng)? 
Python里藏著5個(gè)處理Excel的“神仙庫”——從基礎(chǔ)讀寫、批量分析到格式美化,全場(chǎng)景覆蓋,直接幫你省出2小時(shí)摸魚時(shí)間,下面小編就為大家逐個(gè)拆解

還在手動(dòng)錄入Excel到深夜?百份表格批量改格式改到手腕發(fā)酸?跨表核對(duì)數(shù)據(jù)反復(fù)出錯(cuò)返工?打工人別硬扛了!Python里藏著5個(gè)處理Excel的“神仙庫”——從基礎(chǔ)讀寫、批量分析到格式美化,全場(chǎng)景覆蓋,直接幫你省出2小時(shí)摸魚時(shí)間!下面逐個(gè)拆解,按需撿走~

一、openpyxl:.xlsx處理的“入門首選”

openpyxl是Python處理Excel 2010+版本(.xlsx/.xlsm)的“入門界頂流”——純Python開發(fā),Windows、Mac、Linux都能用,API設(shè)計(jì)得清爽不繞彎,官方文檔還帶詳細(xì)示例。新手花半小時(shí)跟著示例敲代碼,就能搞定基礎(chǔ)操作,日常辦公的讀寫、改格式需求基本都能cover。

核心功能

基礎(chǔ)操作全拿捏:創(chuàng)建/打開工作簿、工作表;輕松搞定單元格數(shù)據(jù)的讀寫和修改;字體(加粗、變色、調(diào)字號(hào))、對(duì)齊方式、邊框、背景色這些格式隨便改;合并單元格、凍結(jié)窗格也能實(shí)現(xiàn);還支持“讀寫模式優(yōu)化”,打開大文件不卡頓。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)很實(shí)在:免費(fèi)開源不花錢,跨平臺(tái)不用挑電腦,新手看示例就會(huì)用,還不用裝Microsoft Excel;優(yōu)化后能扛大文件,處理幾MB的表格也不卡。缺點(diǎn)也得提:只認(rèn).xlsx系列格式,老掉牙的.xls文件打不開;想做復(fù)雜圖表的話,它就有點(diǎn)力不從心了。

適用場(chǎng)景

日常辦公直接用:比如給程序員晚?xiàng)鞯膯T工信息表統(tǒng)一加表頭顏色、加粗標(biāo)題;批量更新表格里的固定字段(像全公司部門調(diào)整,一鍵改完);或者簡(jiǎn)單讀寫.xlsx文件,替代手動(dòng)復(fù)制粘貼。

安裝與示例

安裝超簡(jiǎn)單,命令行敲一行:pip install openpyxl

給新手整個(gè)“創(chuàng)建帶格式表格”的實(shí)用示例,復(fù)制就能跑:

from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill

# 新建工作簿和工作表
wb = Workbook()
ws = wb.active
ws.title = "程序員晚?xiàng)鞯膯T工信息表"  # 給工作表改個(gè)名

# 寫表頭+加樣式(加粗白字+藍(lán)色背景)
headers = ["姓名", "部門", "入職日期"]
for col, header in enumerate(headers, 1):
    cell = ws.cell(row=1, column=col, value=header)
    cell.font = Font(bold=True, color="FFFFFF")  # 加粗白字
    cell.fill = PatternFill(start_color="4472C4", fill_type="solid")  # 藍(lán)色背景

# 寫數(shù)據(jù)
data = [["張三", "研發(fā)部", "2025-01-15"], ["李四", "市場(chǎng)部", "2025-02-20"]]
for row, row_data in enumerate(data, 2):  # 從第2行開始寫數(shù)據(jù)
    for col, value in enumerate(row_data, 1):
        ws.cell(row=row, column=col, value=value)

# 保存文件(直接生成在當(dāng)前文件夾)
wb.save("程序員晚?xiàng)鞯膯T工信息表.xlsx")

二、xlrd/xlwt:舊版.xls的“專屬搭檔”

xlrd和xlwt是處理“老古董”.xls文件的“黃金搭檔”——分工超明確:xlrd負(fù)責(zé)讀.xls數(shù)據(jù),xlwt負(fù)責(zé)寫.xls文件,再配個(gè)xlutils庫,還能改已有.xls文件,完美解決舊格式兼容問題。重點(diǎn)提醒:xlrd 2.0以上版本不支持.xlsx,要處理舊文件得裝1.2.0版本。

核心功能

核心能力精準(zhǔn)匹配舊格式:xlrd能讀.xls的工作表、單元格數(shù)據(jù),還能算出行數(shù)列數(shù),按需加載工作表省內(nèi)存;xlwt能新建.xls,寫數(shù)據(jù)時(shí)加基礎(chǔ)格式(加粗、邊框),合并單元格也能用;xlutils就是“粘合劑”,讓xlrd讀的內(nèi)容能通過xlwt修改。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)就是“專”:專為.xls設(shè)計(jì),老報(bào)表打開不亂碼,兼容性拉滿;體積小運(yùn)行快,輕量不占資源。缺點(diǎn)也明顯:xlrd不支持新格式.xlsx,xlwt寫的文件最多只能放65536行(超了會(huì)報(bào)錯(cuò));高級(jí)格式和圖表基本做不了,只能滿足基礎(chǔ)需求。

適用場(chǎng)景

適配場(chǎng)景很明確:公司整理歷史檔案,一堆2010年前的.xls報(bào)表要提取數(shù)據(jù);批量匯總多個(gè)舊版銷售報(bào)表的關(guān)鍵數(shù)據(jù);生成不超過6萬行的舊格式報(bào)表(比如給還在用老Excel的客戶發(fā)文件)。

安裝與示例

安裝要指定xlrd版本,命令行敲:pip install xlrd==1.2.0 xlwt xlutils

最常用的“讀舊版.xls”示例,復(fù)制即用:

import xlrd

# 打開舊版.xls文件(路徑換成自己的)
workbook = xlrd.open_workbook("舊版銷售數(shù)據(jù).xls")
# 取第一個(gè)工作表(也能按名字?。簊heet_by_name("1月銷售"))
worksheet = workbook.sheet_by_index(0)

# 讀表頭(第一行)
headers = [worksheet.cell_value(0, col) for col in range(worksheet.ncols)]
print("表頭:", headers)

# 讀所有數(shù)據(jù)行(跳過表頭)
for row in range(1, worksheet.nrows):
    row_data = [worksheet.cell_value(row, col) for col in range(worksheet.ncols)]
    print(f"第{row}行數(shù)據(jù):", row_data)

三、pandas:Excel數(shù)據(jù)處理的“效率王者”

pandas雖不是專門為Excel設(shè)計(jì)的,但處理Excel批量數(shù)據(jù)的能力,堪稱辦公界的“天花板”!它能用“DataFrame”表格格式加載Excel數(shù)據(jù),篩選、排序、匯總都是秒級(jí)完成,再搭openpyxl或xlrd當(dāng)“引擎”,新舊格式都能搞定。

核心功能

批量操作是強(qiáng)項(xiàng):?jiǎn)畏?多份Excel一鍵讀取,還能指定讀某張工作表;用DataFrame做數(shù)據(jù)篩選、去重、分組統(tǒng)計(jì)(比如按區(qū)域算銷售額),甚至補(bǔ)缺失值;多表合并也輕松(比如把業(yè)績(jī)表和考勤表按員工ID拼在一起);處理完的數(shù)據(jù)直接寫回Excel,還能分拆到不同工作表。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)太香了:批量數(shù)據(jù)處理速度飛起,一行代碼搞定人工幾小時(shí)的統(tǒng)計(jì);多表合并、數(shù)據(jù)清洗這些復(fù)雜操作不用寫循環(huán);新舊格式都兼容。缺點(diǎn)也得接受:對(duì)Excel的格式(字體、顏色)控制很弱,想美化報(bào)表得換別的庫;新手要先學(xué)下DataFrame的基礎(chǔ)用法(不難,半小時(shí)入門)。

適用場(chǎng)景

辦公場(chǎng)景高頻用:月度銷售數(shù)據(jù)匯總(按區(qū)域、產(chǎn)品統(tǒng)計(jì));十幾份Excel報(bào)表合并去重(比如各門店的銷售表匯總成全國表);清洗數(shù)據(jù)(刪除空行、修正錯(cuò)誤格式);生成數(shù)據(jù)透 視表風(fēng)格的統(tǒng)計(jì)結(jié)果(比Excel手動(dòng)拖更靈活)。

安裝與示例

安裝要帶引擎(處理.xlsx用openpyxl):pip install pandas openpyxl

打工人最常用的“多表匯總”示例,超實(shí)用:

import pandas as pd

# 要匯總的Excel文件列表(換成自己的文件名)
file_names = ["1月銷售.xlsx", "2月銷售.xlsx"]
# 批量讀取所有文件并合并成一個(gè)表格
all_data = pd.concat([
    pd.read_excel(file, engine="openpyxl")  # 用openpyxl當(dāng)引擎讀.xlsx
    for file in file_names
])

# 按“區(qū)域”匯總“銷售額”(表格要真有這兩列哦)
sales_summary = all_data.groupby("區(qū)域")["銷售額"].sum().reset_index()

# 寫回新Excel,分兩個(gè)工作表存
with pd.ExcelWriter("季度銷售匯總.xlsx", engine="openpyxl") as writer:
    all_data.to_excel(writer, sheet_name="原始數(shù)據(jù)", index=False)  # 存原始數(shù)據(jù)
    sales_summary.to_excel(writer, sheet_name="區(qū)域匯總", index=False)  # 存匯總結(jié)果

print("匯總完成!直接打開‘季度銷售匯總.xlsx'看結(jié)果~")

四、xlsxwriter:Excel格式美化的“顏值擔(dān)當(dāng)”

xlsxwriter是Excel“顏值擔(dān)當(dāng)”——雖然不能讀Excel文件,但做格式美化和圖表的能力拉滿!單元格格式、條件格式、數(shù)據(jù)驗(yàn)證都能精細(xì)控制,還能做折線圖、柱狀圖這些專業(yè)圖表,生成的Excel報(bào)表堪比專業(yè)排版,拿去給老板匯報(bào)超有面。

核心功能

美化能力拉滿:字體、顏色、邊框、背景色想怎么調(diào)就怎么調(diào);條件格式超實(shí)用(比如銷售額低于5萬標(biāo)紅預(yù)警);還能限制單元格輸入(比如只能填數(shù)字);生成的圖表帶標(biāo)題、圖例、數(shù)據(jù)標(biāo)簽,比Excel手動(dòng)做的還規(guī)整;插入圖片、超鏈接也沒問題。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)就是“美且強(qiáng)”:格式控制精細(xì)到像素,圖表專業(yè)度高;支持內(nèi)存優(yōu)化,生成幾十MB的大報(bào)表也不崩;API清晰,看示例就會(huì)用。缺點(diǎn)也明確:只能新建Excel,不能讀也不能改已有文件;只認(rèn).xlsx,老格式.xls不支持。

適用場(chǎng)景

匯報(bào)場(chǎng)景必用:做月度業(yè)績(jī)報(bào)表,加個(gè)專業(yè)柱狀圖;做庫存預(yù)警表,低于安全庫存自動(dòng)標(biāo)紅;做公司統(tǒng)一的報(bào)銷單、申請(qǐng)表模板,格式固定不混亂。

安裝與示例

安裝一行命令:pip install xlsxwriter

給新手整個(gè)“帶條件格式+圖表”的匯報(bào)報(bào)表示例:

import xlsxwriter

# 新建工作簿和工作表
workbook = xlsxwriter.Workbook("業(yè)績(jī)報(bào)表.xlsx")
worksheet = workbook.add_worksheet("銷售趨勢(shì)")  # 工作表命名

# 定義樣式(表頭樣式+預(yù)警樣式)
header_style = workbook.add_format({
    "bold": True, "bg_color": "#4472C4", "font_color": "white"
})
warning_style = workbook.add_format({"font_color": "red"})  # 銷售額低標(biāo)紅

# 寫表頭和數(shù)據(jù)
headers = ["月份", "銷售額(元)"]
data = [["1月", 50000], ["2月", 65000], ["3月", 48000], ["4月", 72000]]
worksheet.write_row("A1", headers, header_style)  # 寫表頭+加樣式

# 寫數(shù)據(jù),銷售額低于5萬標(biāo)紅
for row, (month, sales) in enumerate(data, 1):
    worksheet.write(row, 0, month)  # 寫月份
    # 條件判斷:低于5萬加預(yù)警樣式
    if sales < 50000:
        worksheet.write(row, 1, sales, warning_style)
    else:
        worksheet.write(row, 1, sales)

# 做柱狀圖(銷售趨勢(shì))
chart = workbook.add_chart({"type": "column"})
# 關(guān)聯(lián)數(shù)據(jù)(月份為X軸,銷售額為Y軸)
chart.add_series({
    "name": "銷售額",
    "categories": ["銷售趨勢(shì)", 1, 0, 4, 0],  # 月份數(shù)據(jù)范圍
    "values": ["銷售趨勢(shì)", 1, 1, 4, 1],      # 銷售額數(shù)據(jù)范圍
})
# 給圖表加標(biāo)題和軸標(biāo)簽
chart.set_title({"name": "2025年1-4月銷售趨勢(shì)"})
chart.set_x_axis({"name": "月份"})
chart.set_y_axis({"name": "銷售額(元)"})

# 插入圖表到D2位置
worksheet.insert_chart("D2", chart)

# 關(guān)閉工作簿(必寫!不然文件會(huì)損壞)
workbook.close()
print("報(bào)表生成完成!打開‘業(yè)績(jī)報(bào)表.xlsx'看效果~")

五、pywin32:Windows下的“全能操控手”

pywin32是Windows用戶的“Excel全能遙控器”——靠調(diào)用本地Microsoft Excel的COM接口干活,相當(dāng)于用Python替你手動(dòng)點(diǎn)鼠標(biāo)操作Excel。所以Excel能做的事,它全能干,宏、密碼保護(hù)、高級(jí)圖表這些都不在話下,堪稱“無上限”工具。

核心功能

Excel原生功能全復(fù)刻:?jiǎn)?dòng)/關(guān)閉Excel、新建/打開文件都能控制,還能讓Excel后臺(tái)偷偷運(yùn)行不彈窗;.xls/.xlsx/.xlsm不管啥格式都能處理;宏能運(yùn)行能錄制,帶宏的財(cái)務(wù)報(bào)表直接自動(dòng)化;轉(zhuǎn)PDF精度拉滿,和手動(dòng)轉(zhuǎn)的一模一樣;帶密碼的Excel文件也能處理。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)就是“全能”:Excel能做的它都能做,復(fù)雜報(bào)表、宏操作全拿下;格式轉(zhuǎn)換精度第一,投標(biāo)文件這種關(guān)鍵文檔轉(zhuǎn)PDF必用;能和Word、PPT聯(lián)動(dòng)(比如從Word提數(shù)據(jù)寫Excel)。缺點(diǎn)很明顯:僅限Windows,Mac/Linux用不了;必須裝正版Excel;后臺(tái)運(yùn)行容易殘留進(jìn)程,忘關(guān)會(huì)占內(nèi)存。

適用場(chǎng)景

復(fù)雜場(chǎng)景救星:處理帶宏的自動(dòng)計(jì)算報(bào)表(比如財(cái)務(wù)的利潤表,改數(shù)據(jù)自動(dòng)算結(jié)果);投標(biāo)報(bào)價(jià)表轉(zhuǎn)PDF(要求和原表格格式完全一致);做Office聯(lián)動(dòng)流程(Excel取數(shù)→Word寫報(bào)告→PDF存檔)。

安裝與示例

安裝命令:pip install pywin32

高頻場(chǎng)景“Excel轉(zhuǎn)PDF”示例,精度拉滿:

import win32com.client as win32

# 啟動(dòng)Excel(后臺(tái)運(yùn)行,不彈窗)
excel = win32.Dispatch("Excel.Application")
excel.Visible = 0  # 0=后臺(tái),1=顯示界面
excel.DisplayAlerts = 0  # 關(guān)閉彈窗警告(比如文件已存在的提示)

# 打開Excel文件(路徑要寫全,注意用雙反斜杠或r前綴)
workbook = excel.Workbooks.Open(r"C:\你的文件路徑\投標(biāo)報(bào)價(jià)表.xlsx")

# 轉(zhuǎn)PDF(17是PDF的固定編碼,記住就行)
pdf_path = r"C:\你的文件路徑\投標(biāo)報(bào)價(jià)表.pdf"
workbook.SaveAs(pdf_path, FileFormat=17)

# 關(guān)鍵!一定要關(guān)文件和Excel,不然后臺(tái)會(huì)殘留進(jìn)程
workbook.Close()
excel.Quit()

print(f"PDF已生成:{pdf_path}")

終極選型指南:按需pick不踩坑

不用再糾結(jié)!按場(chǎng)景直接挑:

新手入門/日常.xlsx處理:openpyxl(免費(fèi)跨平臺(tái),看示例就會(huì));

舊版.xls文件處理:xlrd+xlwt(專屬兼容,老報(bào)表不慌);

批量數(shù)據(jù)匯總/清洗:pandas(效率之王,一行代碼頂一小時(shí)人工);

高顏值報(bào)表/圖表:xlsxwriter(匯報(bào)神器,格式專業(yè)拿得出手);

Windows+Excel深度操控:pywin32(全能選手,宏、高精度轉(zhuǎn)格式全搞定)。

其實(shí)80%的辦公場(chǎng)景,openpyxl(基礎(chǔ)操作)+pandas(批量處理)就夠了!練熟這倆,基本能告別重復(fù)的Excel操作,效率直接翻倍~

到此這篇關(guān)于Python中處理Excel的5個(gè)神仙庫的使用指南的文章就介紹到這了,更多相關(guān)Python處理Excel內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中如何導(dǎo)入類示例詳解

    Python中如何導(dǎo)入類示例詳解

    這篇文章主要給大家介紹了關(guān)于Python中如何導(dǎo)入類的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 10張動(dòng)圖學(xué)會(huì)python循環(huán)與遞歸問題

    10張動(dòng)圖學(xué)會(huì)python循環(huán)與遞歸問題

    今天為大家整理了十張動(dòng)圖GIFS,有助于認(rèn)識(shí)循環(huán)、遞歸、二分檢索等概念的具體運(yùn)行情況。代碼實(shí)例以Python語言編寫,非常不錯(cuò),感興趣的朋友跟隨小編一起學(xué)習(xí)吧
    2021-02-02
  • python使用gTTS實(shí)現(xiàn)文本轉(zhuǎn)語音功能

    python使用gTTS實(shí)現(xiàn)文本轉(zhuǎn)語音功能

    gTTS(Google?Text-to-Speech),?這個(gè)庫是Google的Text-to-Speech?API的一個(gè)接口,提供了一種簡(jiǎn)單的方式來生成聽起來自然的語言,下面我們就來看看如何使用gTTS實(shí)現(xiàn)文本轉(zhuǎn)語音功能吧
    2024-03-03
  • 利用Python批量識(shí)別電子賬單數(shù)據(jù)的方法

    利用Python批量識(shí)別電子賬單數(shù)據(jù)的方法

    這篇文章主要介紹了利用Python批量識(shí)別電子賬單數(shù)據(jù)的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • Python不使用庫進(jìn)行矩陣運(yùn)算詳解

    Python不使用庫進(jìn)行矩陣運(yùn)算詳解

    這篇文章主要介紹了Python不使用庫進(jìn)行矩陣運(yùn)算詳解,矩陣乘法中,需要判斷兩個(gè)矩陣是否可以進(jìn)行相乘,即前一個(gè)矩陣的列是否等于后一個(gè)矩陣的行,,需要的朋友可以參考下
    2023-08-08
  • python提取字符串中的數(shù)字的實(shí)現(xiàn)

    python提取字符串中的數(shù)字的實(shí)現(xiàn)

    本文主要介紹了python提取字符串中的數(shù)字的實(shí)現(xiàn),主要介紹了幾種常見的方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • Python中獲取對(duì)象信息的方法

    Python中獲取對(duì)象信息的方法

    這篇文章主要介紹了Python中獲取對(duì)象信息的方法,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-04-04
  • Python 聊聊socket中的listen()參數(shù)(數(shù)字)到底代表什么

    Python 聊聊socket中的listen()參數(shù)(數(shù)字)到底代表什么

    本篇文章對(duì)Python 聊聊socket中的listen()參數(shù)(數(shù)字)到底代表什么,進(jìn)行了很好的講解,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • 從入門到精通詳解LangChain加載HTML內(nèi)容的全攻略

    從入門到精通詳解LangChain加載HTML內(nèi)容的全攻略

    這篇文章主要為大家詳細(xì)介紹了如何用LangChain優(yōu)雅地處理HTML內(nèi)容,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-07-07
  • Python實(shí)現(xiàn)文件從一個(gè)文件夾復(fù)制到另一個(gè)文件夾的步驟詳解

    Python實(shí)現(xiàn)文件從一個(gè)文件夾復(fù)制到另一個(gè)文件夾的步驟詳解

    在Python編程中,文件復(fù)制是一個(gè)常見的操作,它允許我們將一個(gè)文件的內(nèi)容復(fù)制到另一個(gè)文件中,文件復(fù)制操作在許多實(shí)際應(yīng)用中都非常有用,比如備份文件、數(shù)據(jù)分析和處理等,在本文中,我們將詳細(xì)如何使用Python將文件從一個(gè)文件夾復(fù)制到另一個(gè)文件夾
    2025-09-09

最新評(píng)論

周至县| 湘潭县| 宁城县| 高清| 罗江县| 灌阳县| 鄂州市| 舒兰市| 合山市| 怀远县| 原平市| 鄂州市| 石渠县| 繁峙县| 永城市| 深州市| 常山县| 兴山县| 乌鲁木齐县| 慈溪市| 高青县| 田阳县| 林周县| 麻阳| 庄河市| 宿州市| 新密市| 泾川县| 玉树县| 务川| 高雄市| 饶河县| 大方县| 德保县| 随州市| 和顺县| 博湖县| 林芝县| 沙洋县| 仪征市| 固阳县|