python - 将 json 值更改为数组
问题描述
我正在尝试更改嵌套 json 中的值并将其转换为数组。
这是当前的 json 输出:
print(response['Version']['Document'])
{
"Statement": [
{
"ID": "000"
"Resource": [
"a----",
"b----"
]
}
{
"Resource": "c----"
}
{
"ID": "000"
"Resource": [
"d----",
"e----"
]
}
]
}
我想将值"Resource": "c----"
转换为数组,因此所需的输出如下所示:
{
"Statement": [
{
"ID": "000"
"Resource": [
"a----",
"b----"
]
}
{
"Resource": [
"c----"
]
}
{
"Resource": [
"d----",
"e----"
]
}
]
}
对此有什么好的解决方案?
解决方案
首先,您可以使用 type() 查找变量的数据类型,并检查变量是否为 list 类型,则可以,如果不是,则可以将其转换为 list。
您可以使用以下代码
jsonData=response['Version']['Document']
for elem in jsonData['Statement']:
if(type(elem['Resource'])==list):
pass
else:
elem['Resource']=[elem['Resource']]
推荐阅读
- c - 为什么linux内核使用双重逻辑否定而不是强制转换为布尔值?
- regex - SAS PRXCHANGE 语句评估
- android - 什么时候应该使用fragment,什么时候应该使用activity?
- vba - Excel中的VBA自动更新图像尺寸
- seaborn - 具有正确缩放比例的 Seaborn Stripplot 轴值
- swift - 从堆栈中移除当前的 View Controller 并移动到新的 View Controller
- c# - 设计一个没有单个项目查找uri的rest api搜索是一种常见的模式吗?
- python - Python promise 类转向解析值
- android - 用毕加索在给定的时间间隔刷新图像
- database - 组合框无法填充关联表单中的两个字段