登录
首页 >  文章 >  python教程

Python轻松转换JSONCSVExcel教程

时间:2025-07-11 14:33:48 308浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《Python轻松实现JSON CSV Excel互转教程》,这篇文章主要讲到等等知识,如果你对文章相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

Python处理数据格式转换的关键在于掌握常用库和步骤。JSON转CSV需先解析再写入,用json和pandas实现;CSV转Excel只需pandas一行代码,注意编码和索引设置;Excel转JSON要指定sheet并清理空值,支持多种输出格式;封装函数可实现自动化转换。掌握这些技能即可应对多数数据处理任务。

Python怎样实现数据格式互转—JSON/CSV/Excel转换大全

Python在处理数据格式转换方面非常强大,尤其是像JSON、CSV和Excel之间的互转,几乎成了日常编程中不可或缺的技能。只要掌握几个常用库,这些转换操作其实并不复杂。

Python怎样实现数据格式互转—JSON/CSV/Excel转换大全

JSON转CSV:先读取再写入

把JSON数据转成CSV,通常的做法是先解析JSON内容,然后按字段写入CSV文件。这里用到的主要库是jsonpandas

举个例子,如果你有一个包含多个字典的JSON列表:

Python怎样实现数据格式互转—JSON/CSV/Excel转换大全
[
    {"name": "张三", "age": 28, "city": "北京"},
    {"name": "李四", "age": 32, "city": "上海"}
]

你可以这样转换:

  • 使用 json.load()json.loads() 加载数据
  • pandas.DataFrame() 转为DataFrame
  • 最后调用 .to_csv() 输出CSV文件

需要注意的是,如果原始JSON结构比较复杂,比如嵌套层级多,可能需要先做“拍平”处理,否则直接转的话容易出现列不对齐或者类型错误的问题。

Python怎样实现数据格式互转—JSON/CSV/Excel转换大全

CSV转Excel:pandas一行搞定

这个转换可以说是所有里面最简单的了。CSV本质上就是一种纯文本表格格式,而Excel支持导入CSV数据。

使用 pandas 的方法如下:

import pandas as pd
df = pd.read_csv('data.csv')
df.to_excel('output.xlsx', index=False)

关键点在于:

  • 确保CSV文件编码正确(常见是UTF-8)
  • 如果有中文乱码,可以加 encoding='utf-8-sig'
  • Excel输出时一般不带索引,所以建议加上 index=False

如果是大文件,也可以考虑分块读取再写入,避免内存占用过高。


Excel转JSON:注意表头和sheet选择

Excel文件可能包含多个sheet,并且每个sheet的结构不一定一致,所以在转换前要先确定你要读哪个sheet。

基本流程如下:

  • 使用 pd.read_excel('file.xlsx', sheet_name='Sheet1') 读取指定sheet
  • 再调用 .to_json(orient='records') 转成JSON字符串或写入文件

注意事项包括:

  • Excel中的空值会被转为 NaN,导出JSON前最好清理一下
  • JSON格式有多种输出形式,比如 orient='records' 是每行一个对象,适合前端解析
  • 如果字段名不是英文,确保JSON编码没问题,避免中文变成Unicode

小技巧:跨格式批量转换可以封装函数

如果你经常要做这类转换,可以简单封装一个函数,比如:

def convert_format(input_file, output_file):
    if input_file.endswith('.csv'):
        df = pd.read_csv(input_file)
    elif input_file.endswith('.xlsx'):
        df = pd.read_excel(input_file)
    elif input_file.endswith('.json'):
        df = pd.read_json(input_file)

    if output_file.endswith('.csv'):
        df.to_csv(output_file, index=False)
    elif output_file.endswith('.xlsx'):
        df.to_excel(output_file, index=False)
    elif output_file.endswith('.json'):
        df.to_json(output_file, orient='records')

这样你只需要传入输入输出路径,就能自动完成转换。当然还可以加参数控制sheet名、编码等。


基本上就这些。掌握了这几个常见格式之间的转换方式,大多数数据处理任务都能轻松应对了。

到这里,我们也就讲完了《Python轻松转换JSONCSVExcel教程》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于Python,Excel,csv,JSON,格式转换的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>