用python代码将excel中的数据批量写入Json中的某个字段,生成新的Json文件

需求

需求:

1.将execl文件中的A列赋值给json中的TrackId,B列赋值给json中的OId
要求 execl的每一行,对应json中的每一个OId
json 如下:

{"List": [{"BatchNumber": "181-{{var}}",//  "BatchNumber": "181-17194575111","FlightNumber": "10214","AirlineCode": "CO","FlightDepartureAirport": "ADA","EstimatedExportTime":"2025-02-18 09:23:21","EstimatedArriveTime":"2024-05-19 09:23:21","FlightEntryAirport": "ADA","FileType":"pdf","AirWaybillFile": """BagDataList": [ {"BagNo": "PKG{{var}}6","OrderDatas": [{"OId": "BG-2401248300000001133","TrackId": "97222600001133"},{"OId": "BG-2401248300000001133","TrackId": "97222600001133"}]}]}]}]
}

2.execl 保存在 D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\test_73553\IDS.xlsx 中
3.赋值完成后,输出新的json格式文件保存在项目JSON目录中

实现代码

# -*- coding: utf-8 -*-
import pandas as pd
import json
from pathlib import Path# 读取Excel文件(注意路径中的中文)
excel_path = r"D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\test_73553\IDS.xlsx"
df = pd.read_excel(excel_path)# 构建JSON结构
template = {"List": [{"BatchNumber": "181-{{var}}","FlightNumber": "10214","AirlineCode": "CO","FlightDepartureAirport": "ADA","EstimatedExportTime": "2025-02-18 09:23:21","EstimatedArriveTime": "2024-05-19 09:23:21","FlightEntryAirport": "ADA","FileType": "pdf","AirWaybillFile": "","BagDataList": [{"BagNo": "PKG{{var}}6","OrderDatas": []}]}]
}# 填充OrderDatas
for _, row in df.iterrows():order_data = {"OId": row["原平台ID"],"TrackId": row["跟踪号"]}template["List"][0]["BagDataList"][0]["OrderDatas"].append(order_data)# 创建输出目录
output_dir = Path.cwd() / "JSON"
output_dir.mkdir(exist_ok=True)# 保存JSON文件(显式指定utf-8编码)
output_path = output_dir / "output.json"
with open(output_path, "w", encoding="utf-8") as f:json.dump(template, f, indent=4, ensure_ascii=False)print(f"JSON文件已生成至:{output_path}")

实现结果

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/897857.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】dash-fastapi前后端搭建

概述 项目中需要快速搭建一个前后端系统,涉及到dash-fastapi架构的时候,对该架构的时候进行总结。本文主要总结的是对该架构的基本使用,后续再对该架构的项目源码进行总结分析 此处实现一个小的demo,迷你任务管理器,…

IDEA中链接使用mysql数据库

一、连接mysql 1. 打开idea,在右上角侧边栏有数据库database插件,打开侧边栏点击加号->数据源,可以看到支持很多数据库,选择mysql。 2. 首次使用需要下载驱动程序,不然连接数据库会报错。找到mysql,点击…

程序编译生成的文件

目录 .i 文件 .s 文件 .o文件 总结 在 C 编程中,.i、.s和 .o 文件是编译过程中生成的不同阶段的文件,它们代表不同的含义: .i 文件 全称 :预处理后的文件(Intermediate File)。 含义:.i文件…

[S32K]SPI

SpiShiftClockidleLevel: CLK空闲时电平(CPOL); SpiDataShifrEdge:数据移位边沿(CPHA); SpiDataWidth: SpiTransferStart: MSB(高位起始),LSB(低位起始);; SpiHwUnit: 这是一个具体的硬件? SpiDataShiftE…

系统思考:客户价值

“真正的市场竞争,不是比谁更能制造产品,而是比谁更能创造价值。” ——杰夫贝索斯 在组织辅导中,我经常问团队一个问题:“我们的客户是谁?”大多数人的第一反应是——“支付费用的就是客户。” 这在过去的市场扩张阶…

ArcGIS Pro 车牌分区数据处理与地图制作全攻略

在大数据时代,地理信息系统(GIS)技术在各个领域都有着广泛的应用,而 ArcGIS Pro 作为一款功能强大的 GIS 软件,为数据处理和地图制作提供了丰富的工具和便捷的操作流程。 车牌数据作为一种重要的地理空间数据&#xf…

OpenCV图像加权函数:addWeighted

1 addWeighted函数 在OpenCV 里,addWeighted 函数的作用是对两个图像进行加权求和,常用于图像融合、图像过渡等场景。函数如下: cv2.addWeighted(src1, alpha, src2, beta, gamma[, dst[, dtype]])2 参数解释 src1:第一个输入图…

Tcp网络通信的基本流程梳理

先来一张经典的流程图 接下介绍一下大概流程,各个函数的参数大家自己去了解加深一下印象 服务端流程 1.创建套接字:使用 socket 函数创建一个套接字,这个套接字后续会被用于监听客户端的连接请求。 需要注意的是,服务端一般有俩…

mysql学习-删除数据(drop、truncate、delete)

1、概述 drop、truncate、delete都可以删除mysql中的数据,但它们的作用范围和操作方式有很大的不同。 2、详细区别 2.1、drop 特点: 1、速度快 2、会删除表数据,还会删除表结构,包括与该表相关的所有数据,索引&…

编程自学指南:java程序设计开发,网络编程基础,TCP编程,UDP编程,HTTP客户端开发

编程自学指南:java程序设计开发,网络编程基础 学习目标: 理解网络协议(TCP/IP、UDP)的核心概念 掌握Socket编程实现客户端与服务端通信 能够通过多线程处理并发网络请求 开发简单的网络应用(如聊天程序…

leecode797.所有可能的路径

深度优先搜索 class Solution { private:vector<vector<int>> result;vector<int> temp;void allPathsSourceTarget(vector<vector<int>> &graph,int v){if(vgraph.size()-1)result.push_back(temp);else{for(auto& adjVertex:graph[v]…

第八节:红黑树(初阶)

【本节要点】 红黑树概念红黑树性质红黑树结点定义红黑树结构红黑树插入操作的分析 一、红黑树的概念与性质 1.1 红黑树的概念 红黑树 &#xff0c;是一种 二叉搜索树 &#xff0c;但 在每个结点上增加一个存储位表示结点的颜色&#xff0c;可以是 Red和 Black 。 通过对 任何…

微信小程序threejs三维开发

微信小程序threejs开发 import * as THREE from three; const { performance, document, window, HTMLCanvasElement, requestAnimationFrame, cancelAnimationFrame, core, Event, Event0 } THREE .DHTML import Stats from three/examples/jsm/libs/stats.module.js; im…

jupyter无法转换为PDF,HTMLnbconvert failed: Pandoc wasn‘t found.

无法转为PDF 手动下载工具 https://github.com/jgm/pandoc/releases/tag/3.6.3 似乎跟我想的不大一样&#xff0c;还有新的报错 https://nbconvert.readthedocs.io/en/latest/install.html#installing-tex 不知道下的啥玩意儿 sudo apt-get install texlive-xetex texlive-fon…

关于PLC、电缆线材及气缸选型的详细教程

以下是关于PLC、电缆线材及气缸选型的详细教程&#xff0c;整合了多个专业来源的核心要点&#xff1a; 一、PLC选型要点 生产厂家选择 日系PLC&#xff08;如三菱FX系列、欧姆龙CP1系列&#xff09;适合独立设备或简单控制系统&#xff0c;性价比高。欧美系PLC&#xff08;如西…

使用 Excel 实现绩效看板的自动化

引言 在日常工作中&#xff0c;团队的绩效监控和管理是确保项目顺利进行的重要环节。然而&#xff0c;面临着以下问题&#xff1a; ​数据分散&#xff1a;系统中的数据难以汇总&#xff0c;缺乏一个宏观的团队执行情况视图。​看板缺失&#xff1a;系统本身可能无法提供合适…

02 windows qt配置ffmpeg开发环境搭建

版本说明 首先我使用ffmpeg版本是4.2.1 QT使用版本5.14.2 我选择是c编译 在02Day.pro⾥⾯添加ffmpeg头⽂件和库⽂件路径 win32 { INCLUDEPATH $$PWD/ffmpeg-4.2.1-win32-dev/include LIBS $$PWD/ffmpeg-4.2.1-win32-dev/lib/avformat.lib \$$PWD/ffmpeg-4.2.1-win32-dev/l…

Dask:Python高效并行计算利器

Dask&#xff1a;Python高效并行计算利器 Dask是一个开源的Python并行计算库&#xff0c;旨在扩展Python常用工具&#xff08;如NumPy、Pandas、Scikit-learn等&#xff09;的功能&#xff0c;使其能够处理更大规模的数据集和更复杂的计算任务。它通过动态任务调度和分布式计算…

掌握市场先机:9款销售渠道管理工具深度测评

本文主要介绍了以下9款销售渠道管理工具&#xff1a;1.纷享销客&#xff1b; 2.销帮帮&#xff1b; 3.小满CRM&#xff1b; 4.有赞&#xff1b; 5.Oracle NetSuite&#xff1b; 6.Salesforce Sales Cloud&#xff1b; 7.Cin7&#xff1b; 8.Pipedrive&#xff1b; 9.BigCommerc…

C语言基础知识04

指针 指针概念 指针保存地址&#xff0c;地址是字节的编号 指针类型和保存的地址类型要一直 使用时注意&#xff0c;把地址转换为&变量的格式来看 int a[3]; a转为&a[0] 指针的大小 64bit 固定8字节&#xff0c; 32bit 固定4字节 指针…