国产化Excel开发组件Spire.XLS教程:Python 将 CSV 转换为 Excel(.XLSX)

当我们处理数据时,使用 CSV 文件很常见,但如果涉及到数据共享、可视化和大规模分析方面,Excel(XLSX)往往具有更多优势。

E-iceblue旗下Spire系列产品,是文档开发组件领域的佼佼者,支持国产化信创。 本文将为你介绍如何借助**++Spire.XLS++**使用 Python 转换 CSV 为 Excel,涵盖单个文件和批量转换两种方法。无论是需要自动生成报表,还是为后续分析做数据准备,都能通过本教程高效完成转换。

Spire.XLS for Python试用下载

为什么要将 CSV 转换为 Excel?

由于 CSV 文件的结构较为简单,因此它在数据存储与交换中被广泛使用,但在格式设置、呈现效果和可用性方面存在不少限制。将 CSV 转换为 Excel 能带来多方面优势:

将 CSV 转换为 Excel 的优势

  • 更丰富的格式支持:Excel 提供字体、颜色、边框、单元格合并等多种格式设置,让数据更易阅读和展示。
  • 多工作表支持:CSV 只能包含单一工作表,而 Excel 文件可在同一文件中保存多个工作表,更适合处理大型数据集。
  • 内置公式与图表功能:可直接使用 Excel 公式、数据透视表和图表进行数据分析与可视化。
  • 更适合业务用户:Excel 是许多非技术用户的首选工具,便于数据共享与协作。

CSV 文件的局限性

  • 无样式和格式支持(仅限纯文本)。
  • 仅支持单工作表结构。
  • 容易出现编码问题(例如包含非英文字符时)。
  • 不适合大型数据集或复杂报表。如果你的工作流程涉及报表生成、数据分析或与他人共享数据,将 CSV 转换为 Excel 往往是更实用、更灵活的选择。

安装所需的 Python 库

本教程将使用Spire.XLS for Python 来演示如何在 Python 中轻松转换 CSV 为 Excel,包括 .xlsx 和 .xls 格式。++Spire.XLS++ 是一款功能强大且专业的 Python Excel 库,可在不依赖 Microsoft Excel 的情况下读取、编辑和转换 Excel 文件。

安装这个 CSV 转 Excel 工具非常简单,只需运行以下命令:

复制代码
pip install Spire.XLS

此外,你也可以手动**++下载 Spire.XLS++** 安装包,进行自定义安装。

Python 将单个 CSV 文件转换为 Excel

接下来进入正题------如何在 Python 中将单个 CSV 文件转换为 Excel。有了 ++Spire.XLS++,这个任务只需三步:创建新工作簿、加载 CSV 文件、将其保存为 Excel(.xlsx或.xls)文件。下面我们将结合完整代码示例为你详细讲解。

在 Python 中将单个 CSV 转换为 Excel 的步骤:

  • 创建一个 Workbook 实例。
  • 使用 Workbook.LoadFromFile() 方法加载示例 CSV 文件。
  • 通过 Workbook.SaveToFile() 方法将 CSV 保存为 Excel 文件。

下面的 Python 代码不仅实现了 CSV 转 Excel,还设置了忽略解析错误,并自动调整列宽以提升可读性:

复制代码
from spire.xls import *
from spire.xls.common import *

# 创建一个 Workbook 对象
workbook = Workbook()

# 加载一个 CSV 文件
workbook.LoadFromFile("/input/人口土地.csv", ",", 1, 1)
  
# 设置忽略错误选项和自适应列宽
sheet = workbook.Worksheets[0]
sheet.Range["B2:D11"].IgnoreErrorOptions = IgnoreErrorType.NumberAsText
sheet.AllocatedRange.AutoFitColumns()  

# 将 CSV 文件保存为 Excel
workbook.SaveToFile("/output/CSV转Excel.xlsx", ExcelVersion.Version2013)
# 将 CSV 文件保存为.xls
#workbook.SaveToFile("/output/CSV转Excel11.xls", ExcelVersion.Version97to2003)

单个 CSV 文件转换为 Excel 结果文档预览:

Python 批量将 CSV 转换为 XLSX

另一种常见需求是将多个 CSV 文件批量转换为 Excel。与其在代码中手动修改文件路径和文件名,不如用更高效的方式:只需将所有 CSV 文件放在同一文件夹中,然后用 Python 遍历文件并调用 Workbook.SaveToFile() 方法就能成功将文件夹中所有 CSV 文件一次性转换为 Excel 文件。

在 Python 中批量将 CSV 转换为 Excel 的步骤如下:

  • 指定输入文件夹和输出文件夹的路径。
  • 遍历输入文件夹中的所有 CSV 文件。
  • 创建一个 Workbook 类的对象。
  • 使用 Workbook.LoadFromFile() 方法加载输入文件夹中的每个 CSV 文件。
  • 调用 Workbook.SaveToFile() 方法将当前 CSV 文件保存为 Excel 文件。

下面的 Python 代码示例演示了如何批量将 CSV 转换为 Excel(.XLSX):

复制代码
import os
from spire.xls import *

input_folder = r"/input/CSV"
output_folder = r"/output/BatchConversion"

# 遍历所有 CSV 文件
for csv_file in os.listdir(input_folder):
    if csv_file.endswith(".csv"):
        input_path = os.path.join(input_folder, csv_file)
        output_name = os.path.splitext(csv_file)[0] + ".xlsx"
        output_path = os.path.join(output_folder, output_name)

        # 创建 Workbook 实例并加载 CSV 文件
        workbook = Workbook()
        workbook.LoadFromFile(input_path, ",", 1, 1)

        # 将每个 CSV 文件保存为 Excel 文件
        workbook.SaveToFile(output_path, ExcelVersion.Version2013)

下方是批量转换 CVS 为 Excel 文件的结果预览:

总结

本文通过分步讲解与完整代码示例,演示了如何在 Python 中将 CSV 转换为 Excel。无论是处理单个 CSV 文件,还是批量转换多个文件,++Spire.XLS++ 都能让整个过程变得简单高效。

相关推荐
前端精髓6 小时前
结构化输出with_structured_output(抽卡)
python·langchain
尹人入圣6 小时前
目前热门的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip
Nuanyt7 小时前
Agent 学习笔记(下篇三):上线工程、进阶选择与操作界面(Stage 7 / 7.5 / 8 + 延伸路线)
笔记·python·学习·memory·aiagent·harness
吴卫斌7 小时前
定投ETF实战指南(四):行业/主题ETF——定投的“进攻端“
开发语言·python·股票·量化
2601_967987378 小时前
Python——入门级(定义功能def函数)
python·函数·可变参数·默认参数·关键字参数
专注仿真10 小时前
梯度提升类(XFBoost)算法详解与代码实例
开发语言·人工智能·python·算法·大模型训练·控制算法
外收内放10 小时前
Python基础语法练习题(75)
开发语言·python·学习
如若12311 小时前
Windows SSH + Headscale/Tailscale 组网及免密登录完整配置教程
运维·windows·ubuntu·ssh·内网穿透
黑十11 小时前
PyTorch 报 “no CUDA GPUs are available“ 怎么办?3 步排查
服务器·网络·人工智能·pytorch·python
threelab11 小时前
开源图片去水印代码
python