当前位置: 代码网 > it编程>前端脚本>Python > 使用Python将JSON格式的假期数据转换为Excel文件

使用Python将JSON格式的假期数据转换为Excel文件

2025年12月05日 Python 我要评论
要将给定的假期数据生成 excel 文件,可以使用 python 的 pandas 和 openpyxl 库来处理。下面是一个示例代码,展示如何将 json 数据转换为 excel 文件。数据来源:h

要将给定的假期数据生成 excel 文件,可以使用 python 的 pandasopenpyxl 库来处理。下面是一个示例代码,展示如何将 json 数据转换为 excel 文件。

数据来源:

https://github.com/natescarlet/holiday-cn/tree/master

安装依赖

首先,确保安装了 pandasopenpyxl。你可以使用以下命令来安装:

pip install pandas openpyxl

示例代码

以下是一个示例代码,展示如何将你的 json 数据转换为 excel 文件:

import pandas as pd
import json
from pandas import excelwriter


# 假期数据 json
holiday_data = {
    "$schema": "https://raw.githubusercontent.com/natescarlet/holiday-cn/master/schema.json",
    "$id": "https://raw.githubusercontent.com/natescarlet/holiday-cn/master/2024.json",
    "year": 2024,
    "papers": [
        "https://www.gov.cn/zhengce/zhengceku/202310/content_6911528.htm"
    ],
    "days": [
        {"name": "元旦", "date": "2024-01-01", "isoffday": true},
        {"name": "春节", "date": "2024-02-04", "isoffday": false},
        {"name": "春节", "date": "2024-02-10", "isoffday": true},
        {"name": "春节", "date": "2024-02-11", "isoffday": true},
        {"name": "春节", "date": "2024-02-12", "isoffday": true},
        {"name": "春节", "date": "2024-02-13", "isoffday": true},
        {"name": "春节", "date": "2024-02-14", "isoffday": true},
        {"name": "春节", "date": "2024-02-15", "isoffday": true},
        {"name": "春节", "date": "2024-02-16", "isoffday": true},
        {"name": "春节", "date": "2024-02-17", "isoffday": true},
        {"name": "春节", "date": "2024-02-18", "isoffday": false},
        {"name": "清明节", "date": "2024-04-04", "isoffday": true},
        {"name": "清明节", "date": "2024-04-05", "isoffday": true},
        {"name": "清明节", "date": "2024-04-06", "isoffday": true},
        {"name": "清明节", "date": "2024-04-07", "isoffday": false},
        {"name": "劳动节", "date": "2024-04-28", "isoffday": false},
        {"name": "劳动节", "date": "2024-05-01", "isoffday": true},
        {"name": "劳动节", "date": "2024-05-02", "isoffday": true},
        {"name": "劳动节", "date": "2024-05-03", "isoffday": true},
        {"name": "劳动节", "date": "2024-05-04", "isoffday": true},
        {"name": "劳动节", "date": "2024-05-05", "isoffday": true},
        {"name": "劳动节", "date": "2024-05-11", "isoffday": false},
        {"name": "端午节", "date": "2024-06-10", "isoffday": true},
        {"name": "中秋节", "date": "2024-09-14", "isoffday": false},
        {"name": "中秋节", "date": "2024-09-15", "isoffday": true},
        {"name": "中秋节", "date": "2024-09-16", "isoffday": true},
        {"name": "中秋节", "date": "2024-09-17", "isoffday": true},
        {"name": "国庆节", "date": "2024-09-29", "isoffday": false},
        {"name": "国庆节", "date": "2024-10-01", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-02", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-03", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-04", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-05", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-06", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-07", "isoffday": true},
        {"name": "国庆节", "date": "2024-10-12", "isoffday": false}
    ]
}


# 转换为 dataframe
df = pd.dataframe(holiday_data['days'])


# 更改表头
df.columns = ['假期名称', '日期', '是否休假']
df['是否休假'] = df['是否休假'].replace({true: '1', false: '0'})

# 显示 dataframe
print(df)


# 保存为 excel 文件
output_file = 'china_holidays_2024.xlsx'
with excelwriter(output_file, engine='openpyxl') as writer:
    df.to_excel(writer, sheet_name='holidays', index=false)


print(f"excel 文件已保存到 {output_file}")


print(f"excel 文件已保存到 {output_file}")



代码说明

  1. 导入库:导入 pandasjson
  2. 定义假期数据:假期数据存储在 holiday_data 变量中。
  3. 转换为 dataframe:使用 pd.dataframe() 将假期数据转换为 pandas dataframe。
  4. 保存为 excel 文件:使用 df.to_excel() 将 dataframe 保存为 excel 文件。
  5. 打印消息:显示文件保存路径。

运行此代码后,将生成一个名为 china_holidays_2024.xlsx 的 excel 文件,其中包含假期的详细信息。

到此这篇关于使用python将json格式的假期数据转换为excel文件的文章就介绍到这了,更多相关python json数据转为excel内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com