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

Python結(jié)合Free?Spire.XLS?for?Python刪除Excel中的空白行列

 更新時(shí)間:2026年02月13日 08:19:04   作者:m5655bj  
在?Excel?數(shù)據(jù)處理場(chǎng)景中,手動(dòng)刪除大量空行、空列效率極低,下面我們就來(lái)看看Python如何結(jié)合Free?Spire.XLS?for?Python實(shí)現(xiàn)自動(dòng)化清除Excel中的空白行列吧

在 Excel 數(shù)據(jù)處理場(chǎng)景中,手動(dòng)刪除大量空行、空列效率極低,而 Python 結(jié)合 Free Spire.XLS for Python 庫(kù)能實(shí)現(xiàn)自動(dòng)化清理。相比于遍歷單元格判斷空值的傳統(tǒng)方式,F(xiàn)ree Spire.XLS 提供了 IsBlank 屬性,可直接判斷整行/整列是否為空,代碼更簡(jiǎn)潔、執(zhí)行效率更高。

環(huán)境準(zhǔn)備

Free Spire.XLS for Python 是一款輕量級(jí)免費(fèi) Excel 處理庫(kù),無(wú)需安裝 Microsoft Excel,純 Python 環(huán)境即可操作 .xls/.xlsx 格式文件。該庫(kù)可通過(guò) pip 命令直接安裝:

pip install Spire.XLS.Free

免費(fèi)版僅適用于小型文檔、項(xiàng)目

核心功能實(shí)現(xiàn):刪除空行空列

from spire.xls import *
from spire.xls.common import *

# 創(chuàng)建工作簿對(duì)象并加載文件
workbook = Workbook()
workbook.LoadFromFile("Input1.xlsx")

# 獲取第一張工作表
sheet = workbook.Worksheets[0]

# 刪除空白行
for i in range(sheet.Rows.Length - 1, -1, -1):
    if sheet.Rows[i].IsBlank:
        sheet.DeleteRow(i + 1)

# 刪除空白列
for j in range(sheet.Columns.Length - 1, -1, -1):
    if sheet.Columns[j].IsBlank:
        sheet.DeleteColumn(j + 1)

# 保存文件
workbook.SaveToFile("Deleted.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

代碼關(guān)鍵部分詳解

代碼片段功能與注意事項(xiàng)
sheet.Rows.Length獲取工作表中總行數(shù)(含空行),作為遍歷的邊界值
sheet.Rows[].IsBlank核心屬性:返回 True 則表示當(dāng)前行所有單元格均為空
range(..., -1, -1)倒序遍歷
sheet.DeleteRow()刪除指定行
sheet.DeleteColumn()刪除指定列
workbook.Dispose()釋放工作簿占用的內(nèi)存資源,大文件處理時(shí)必須添加

關(guān)鍵注意事項(xiàng)

1. IsBlank 的判斷規(guī)則

IsBlank 僅將完全沒(méi)有輸入任何內(nèi)容的單元格視為空。如果單元格包含空格字符、空字符串 “” 或公式返回的空值,IsBlank 會(huì)返回 False。若需將這些情況也視為空,可先遍歷單元格清除多余空格(如 cell.Text.strip())后再處理。

2. 索引偏移陷阱

  • Rows[i] / Columns[j] 索引從 0 開(kāi)始
  • DeleteRow(i) / DeleteColumn(j) 索引從 1 開(kāi)始,務(wù)必在刪除時(shí) +1,否則將誤刪其他行/列。

3. 多工作表處理

若需清洗整個(gè)工作簿,可遍歷 workbook.Worksheets 集合,對(duì)每一張表重復(fù)上述刪除邏輯。

擴(kuò)展功能(按需使用)

1. 批量處理文件夾下所有Excel文件

import os

# 遍歷指定文件夾下所有.xlsx/.xls文件
def batch_process_excel(folder_path: str):
    for file_name in os.listdir(folder_path):
        if file_name.endswith((".xlsx", ".xls")):
            input_path = os.path.join(folder_path, file_name)
            output_path = os.path.join(folder_path, f"cleaned_{file_name}")
            delete_blank_rows_columns(input_path, output_path)

# 調(diào)用示例:處理data文件夾下所有Excel文件
batch_process_excel("data")

2. 僅刪除指定列為空的行

若需實(shí)現(xiàn)“某列(如A列)為空則刪除整行”,可替換空行判斷邏輯:

# 替換原有空行刪除代碼
for i in range(sheet.Rows.Length - 1, -1, -1):
    # 判斷A列(索引0)單元格是否為空
    if sheet.Rows[i].Cells[0].Text.strip() == "":
        sheet.DeleteRow(i + 1)

提示:Cells[0].Text 返回單元格顯示的文本,strip() 可去除前后空格,避免將僅含空格的單元格視為有效數(shù)據(jù)。

總結(jié)

利用 Free Spire.XLS 提供的 IsBlank 屬性和倒序刪除策略,我們能夠以極少的代碼穩(wěn)定、高效地清除 Excel 中的空白行列。該方法尤其適合以下場(chǎng)景:

  • 報(bào)表自動(dòng)清洗流水線
  • 從異構(gòu)數(shù)據(jù)源導(dǎo)入 Excel 前的預(yù)處理
  • 批量整理老舊 Excel 文檔

配合本文提供的擴(kuò)展函數(shù),可輕松應(yīng)對(duì)單文件、多文件乃至定制化條件的刪除任務(wù),大幅提升數(shù)據(jù)處理效率。

到此這篇關(guān)于Python結(jié)合Free Spire.XLS for Python刪除Excel中的空白行列的文章就介紹到這了,更多相關(guān)Python刪除Excel空白行列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python+Tensorflow+CNN實(shí)現(xiàn)車牌識(shí)別的示例代碼

    Python+Tensorflow+CNN實(shí)現(xiàn)車牌識(shí)別的示例代碼

    這篇文章主要介紹了Python+Tensorflow+CNN實(shí)現(xiàn)車牌識(shí)別的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • python3使用Pillow、tesseract-ocr與pytesseract模塊的圖片識(shí)別的方法

    python3使用Pillow、tesseract-ocr與pytesseract模塊的圖片識(shí)別的方法

    這篇文章主要介紹了python3使用Pillow、tesseract-ocr與pytesseract模塊的圖片識(shí)別的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 一文詳細(xì)講解如何手動(dòng)安裝python第三方庫(kù)

    一文詳細(xì)講解如何手動(dòng)安裝python第三方庫(kù)

    這篇文章主要介紹了手動(dòng)安裝Python第三方庫(kù)的步驟,包括下載庫(kù)文件、解壓文件和執(zhí)行安裝命令,文中通過(guò)代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-11-11
  • Python操作Redis數(shù)據(jù)庫(kù)的詳細(xì)教程與應(yīng)用實(shí)戰(zhàn)

    Python操作Redis數(shù)據(jù)庫(kù)的詳細(xì)教程與應(yīng)用實(shí)戰(zhàn)

    Redis是一個(gè)高性能的鍵值存儲(chǔ)數(shù)據(jù)庫(kù),支持多種類型的數(shù)據(jù)結(jié)構(gòu),如字符串、哈希表、列表、集合和有序集合等,在Python中,通過(guò)redis-py庫(kù)可以方便地操作Redis數(shù)據(jù)庫(kù),本文將詳細(xì)介紹如何在Python代碼中操作Redis,需要的朋友可以參考下
    2024-08-08
  • python?matplotlib保存圖片太慢如何解決

    python?matplotlib保存圖片太慢如何解決

    這篇文章主要介紹了python?matplotlib保存圖片太慢問(wèn)題的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • python3調(diào)用百度翻譯API實(shí)現(xiàn)實(shí)時(shí)翻譯

    python3調(diào)用百度翻譯API實(shí)現(xiàn)實(shí)時(shí)翻譯

    這篇文章主要為大家詳細(xì)介紹了python3調(diào)用百度翻譯API,實(shí)現(xiàn)實(shí)時(shí)翻譯,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Python數(shù)據(jù)預(yù)處理時(shí)缺失值的不同處理方式總結(jié)

    Python數(shù)據(jù)預(yù)處理時(shí)缺失值的不同處理方式總結(jié)

    在使用python做數(shù)據(jù)分析的時(shí)候,經(jīng)常需要先對(duì)數(shù)據(jù)做統(tǒng)一化的處理,缺失值的處理是經(jīng)常會(huì)使用到的。今天介紹的是使用差補(bǔ)法/均值/固定值等不同的方式完成數(shù)據(jù)填充從而保證數(shù)據(jù)的完整性,感興趣的可以了解一下
    2022-12-12
  • python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5選項(xiàng)卡控件QTabWidget詳細(xì)使用方法與實(shí)例

    python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5選項(xiàng)卡控件QTabWidget詳細(xì)使用方法與實(shí)例

    這篇文章主要介紹了python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5選項(xiàng)卡控件QTabWidget詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下
    2020-03-03
  • Python中的pprint折騰記

    Python中的pprint折騰記

    這篇文章主要介紹了Python中的pprint折騰記,本文著重講解pprint的使用,并給出使用實(shí)例,需要的朋友可以參考下
    2015-01-01
  • Python趣味入門教程之循環(huán)語(yǔ)句while

    Python趣味入門教程之循環(huán)語(yǔ)句while

    這篇文章主要給大家介紹了關(guān)于Python趣味入門教程之循環(huán)語(yǔ)句while的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論

庄河市| 阳新县| 高阳县| 武威市| 儋州市| 岳池县| 建始县| 开平市| 新干县| 洛宁县| 葵青区| 临江市| 腾冲县| 呼图壁县| 汪清县| 广灵县| 富蕴县| 堆龙德庆县| 康定县| 崇义县| 鲁甸县| 井冈山市| 临朐县| 延川县| 环江| 太康县| 洪湖市| 永登县| 白河县| 精河县| 大厂| 宁德市| 都兰县| 杨浦区| 阳城县| 兴城市| 舟山市| 兰溪市| 兰考县| 迁安市| 揭西县|