python - Python 转换 json
问题描述
我有一个包含如下条目的文本文件:
[
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "madrid,barcelona",
"TargetHostname": "www.spain.com",
"TargetName": "spain",
"HasModule": true
}
},
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "london,liverpool",
"TargetHostname": "www.uk.com",
"TargetName": "uk",
"HasModule": true
}
},
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "dublin,cork",
"TargetHostname": "www.ireland.com",
"TargetName": "ireland",
"HasModule": true
}
}
]
我想要每个城市的规则,我需要修改这个json。
我用python尝试了一些东西,但我没有得到类似的东西
我需要一个 pyhton 脚本来将此输入规则转换为下面的模型。预期的结果是,我希望结果是这样的:
所以我需要每个城市给我一个像json里面的规则。感谢大家的帮助。
我需要每个国家/地区的每条规则……保持在该国家/地区的特定 json 范围内。
例如 spain.json
[
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "madrid",
"TargetHostname": "www.spain.com",
"TargetName": "spain",
"HasModule": true
}
},
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "barcelona",
"TargetHostname": "www.spain.com",
"TargetName": "spain",
"HasModule": true
}
}
]
例如 uk.json
[
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "london",
"TargetHostname": "www.uk.com",
"TargetName": "uk",
"HasModule": true
}
},
{
"Exceptions": {
"GUID": "028326A8206D44A736B45FE6125E59B2",
"ExceptionName": "liverpool",
"TargetHostname": "www.uk.com",
"TargetName": "uk",
"HasModule": true
}
}
]
你可以帮我解决这个问题。
解决方案
import copy
import json
mylist = []
for e in a: #a is the original list.
mylist = []
for city in e["Exceptions"]["ExceptionName"].split(","):
new = copy.deepcopy(e)
new["Exceptions"]["ExceptionName"] = city
mylist.append(new)
with open(f"{new['Exceptions']['TargetName']}.json", "w") as f:
json.dump(mylist, f)
推荐阅读
- visual-c++ - FormatMessage 并不总是提供正确的输出 - 某些值被重复 - 为什么?
- python - 如何使用具有不同类型数据的 3 列作为训练神经网络的输入并将输出作为向量?
- python - 在 DRF 序列化程序中访问 serializer.data 时出现 AttributeError
- amazon-web-services - Quicksight:对单个用户进行身份验证
- sql - 具有不同元素的 SQL 表中的累积和查询
- python - pybacktest 库 hello world 错误:builtins.AttributeError:“系列”对象没有属性“ix”
- r - R studio cloud 找不到函数“Anova”
- html - 如何使我们的网页响应我的移动视图
- docker - Docker:Portainer 服务器与仅代理部署
- node.js - 在 Windows 10 中安装节点后,npm 命令失败并出现错误找不到模块“lru_cache”