Python 實現Excel和CSV格式之間的互轉

来源:https://www.cnblogs.com/Yesi/p/18023363
-Advertisement-
Play Games

通過使用Python編程語言,編寫腳本來自動化Excel和CSV之間的轉換過程,可以批量處理大量文件,定期更新數據,並集成轉換過程到自動化工作流程中。本文將介紹如何使用第三方庫Spire.XLS for Python 實現: 使用Python將Excel轉為CSV 使用Python 將CSV轉為Ex ...


通過使用Python編程語言,編寫腳本來自動化Excel和CSV之間的轉換過程,可以批量處理大量文件,定期更新數據,並集成轉換過程到自動化工作流程中。本文將介紹如何使用第三方庫Spire.XLS for Python 實現:

  • 使用Python將Excel轉為CSV
  • 使用Python 將CSV轉為Excel


安裝Python Excel類庫:

pip install Spire.XLS

 

產品包下載鏈接(包含各功能demo):https://www.e-iceblue.cn/Downloads/Spire-XLS-Python.html

 

Python 將Excel轉為CSV

安裝Spire.XLS for Python後,運行以下代碼就能輕鬆將Excel轉為CSV格式.

from spire.xls import *
from spire.xls.common import *
 
# 創建Workbook對象
workbook = Workbook()
 
# 載入Excel文件
workbook.LoadFromFile("測試.xlsx")
 
# 獲取第一張工作表
sheet = workbook.Worksheets[0]
 
# 將Excel工作表轉為CSV
sheet.SaveToFile("Excel轉CSV.csv", ",", Encoding.get_UTF8())
workbook.Dispose()

 

源文件與生成文件效果展示:

 

Python 將CSV轉為Excel

我們再用剛纔生成的csv文件作為示例,將其通過以下Python代碼轉回Excel文件。

from spire.xls import *
from spire.xls.common import *
 
# 創建Workbook對象
workbook = Workbook()
 
# 載入CSV文件
workbook.LoadFromFile("Excel轉CSV.csv", ",", 1, 1)
 
# 獲取第一張工作表
sheet = workbook.Worksheets[0]
 
# 將數字轉為文本
sheet.AllocatedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText
 
# 自適應列寬
sheet.AllocatedRange.AutoFitColumns()
 
# 保存為Excel文件
workbook.SaveToFile("CSV轉ToExcel.xlsx", ExcelVersion.Version2013)

 

生成文件:

 

以上兩段代碼展示瞭如何使用Python將Excel轉為CSV,以及將CSV轉為Excel。除此之外Spire.XLS for Python庫還支持轉換Excel為其他文件格式,有興趣查看其中文教程


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、總結 1.1、使用System.currentTimeMillis();計算程式執行毫秒數 // 開始時間1 long startTime1 = System.currentTimeMillis(); Thread.sleep(100); // 結束時間1 long endTime1 = Sys ...
  • 日常工作中,數據開發上線完一個任務後並不是就可以高枕無憂,時常因上游鏈路數據異常或者自身處理邏輯的 BUG 導致產出的數據結果不可信。而問題發現可經歷較長周期(尤其離線場景),往往是業務方通過上層數據報表發現數據異常後 push 數據方去定位問題(對於一個較冷的報表,這個周期可能會更長)。 由於數據 ...
  • Java 面向對象編程 面向對象編程 (OOP) 是一種編程範式,它將程式組織成對象。對象包含數據和操作數據的方法。 OOP 的優勢: 更快、更易於執行 提供清晰的結構 代碼更易於維護、修改和調試 提高代碼重用性 減少開發時間 類和對象 類 是對象的模板,它定義了對象的屬性和方法。 對象 是類的實例 ...
  • Miniconda是Anaconda的簡化版, 可以管理多個Python版本的環境. 實際使用的話, 占用的空間不會很小, 我跑一些正常的應用後, 安裝目錄占用空間4.3GB, 安裝建議要預留10到20G的空間. 安裝 Miniconda 下載安裝包 https://docs.anaconda.co ...
  • 美團面試:Kafka如何處理百萬級消息隊列? 在今天的大數據時代,處理海量數據已成為各行各業的標配。特別是在消息隊列領域,Apache Kafka 作為一個分散式流處理平臺,因其高吞吐量、可擴展性、容錯性以及低延遲的特性而廣受歡迎。但當面對真正的百萬級甚至更高量級的消息處理時,如何有效地利用 Kaf ...
  • 摘要 我們報告了 GPT-4 的開發,這是一個大規模、多模態的模型,可以接受圖像和文本輸入,並生成文本輸出。雖然在許多現實場景中不如人類,但 GPT-4 在各種專業和學術基準測試中表現出與人類水平相當的性能,包括在模擬的律師資格考試中取得了約前10%的考生得分。 GPT-4 是基於 Transfor ...
  • 虛擬線程(Virtual Threads)是 Java 21 所有新特性中最為吸引人的內容,它可以大大來簡化和增強Java應用的併發性。但是,隨著這些變化而來的是如何最好地管理此吞吐量的問題。本文,就讓我們看一下開發人員在使用虛擬線程時,應該如何管理吞吐量。 在大多數情況下,開發人員不需要自己創建虛 ...
  • 首先,跨域的域是什麼? 跨域的英文是:Cross-Origin。 Origin 中文含義為:起源,源頭,出生地。 在跨域中,"域"指的是一個 Web 資源(比如網頁、腳本、圖片等)的源頭。 包括該資源的協議、主機名、埠號。 在同源策略中,如果兩個資源的域相同,則它們屬於同一域,可以自由進行交互和共 ...
一周排行
    -Advertisement-
    Play Games
  • 一個自定義WPF窗體的解決方案,借鑒了呂毅老師的WPF製作高性能的透明背景的異形視窗一文,併在此基礎上增加了滑鼠穿透的功能。可以使得透明窗體的滑鼠事件穿透到下層,在下層窗體中響應。 ...
  • 在C#中使用RabbitMQ做個簡單的發送郵件小項目 前言 好久沒有做項目了,這次做一個發送郵件的小項目。發郵件是一個比較耗時的操作,之前在我的個人博客裡面回覆評論和友鏈申請是會通過發送郵件來通知對方的,不過當時只是簡單的進行了非同步操作。 那麼這次來使用RabbitMQ去統一發送郵件,我的想法是通過 ...
  • 當你使用Edge等瀏覽器或系統軟體播放媒體時,Windows控制中心就會出現相應的媒體信息以及控制播放的功能,如圖。 SMTC (SystemMediaTransportControls) 是一個Windows App SDK (舊為UWP) 中提供的一個API,用於與系統媒體交互。接入SMTC的好 ...
  • 最近在微軟商店,官方上架了新款Win11風格的WPF版UI框架【WPF Gallery Preview 1.0.0.0】,這款應用引入了前沿的Fluent Design UI設計,為用戶帶來全新的視覺體驗。 ...
  • 1.簡單使用實例 1.1 添加log4net.dll的引用。 在NuGet程式包中搜索log4net並添加,此次我所用版本為2.0.17。如下圖: 1.2 添加配置文件 右鍵項目,添加新建項,搜索選擇應用程式配置文件,命名為log4net.config,步驟如下圖: 1.2.1 log4net.co ...
  • 之前也分享過 Swashbuckle.AspNetCore 的使用,不過版本比較老了,本次演示用的示例版本為 .net core 8.0,從安裝使用開始,到根據命名空間分組顯示,十分的有用 ...
  • 在 Visual Studio 中,至少可以創建三種不同類型的類庫: 類庫(.NET Framework) 類庫(.NET 標準) 類庫 (.NET Core) 雖然第一種是我們多年來一直在使用的,但一直感到困惑的一個主要問題是何時使用 .NET Standard 和 .NET Core 類庫類型。 ...
  • WPF的按鈕提供了Template模板,可以通過修改Template模板中的內容對按鈕的樣式進行自定義。結合資源字典,可以將自定義資源在xaml視窗、自定義控制項或者整個App當中調用 ...
  • 實現了一個支持長短按得按鈕組件,單擊可以觸發Click事件,長按可以觸發LongPressed事件,長按鬆開時觸發LongClick事件。還可以和自定義外觀相結合,實現自定義的按鈕外形。 ...
  • 一、WTM是什麼 WalkingTec.Mvvm框架(簡稱WTM)最早開發與2013年,基於Asp.net MVC3 和 最早的Entity Framework, 當初主要是為瞭解決公司內部開發效率低,代碼風格不統一的問題。2017年9月,將代碼移植到了.Net Core上,併進行了深度優化和重構, ...