Sum*_*mit 1 python python-3.x xmltodict xml-to-json
我正在尝试使用库在 python 中将 xml 转换为 json xmltodict。虽然 xml 正在转换为 json,但在 dict 中的每个键之前,都会添加“@”前缀。以下是代码片段和示例输出:
import xmltodict
import json
with open('response.xml','r') as res_file:
doc = xmltodict.parse(res_file.read())
xml_json_str = json.dumps(doc)
final_json = json.loads(xml_json_str)
Run Code Online (Sandbox Code Playgroud)
输出:
"CustomerInfo": {
"@address": "Bangalore, Karnataka 560034",
"@email": "abc@gmail.com",
"@name": "Sam",
}
Run Code Online (Sandbox Code Playgroud)
如何一次性从所有密钥中删除@?
最后我找到了一个像魅力一样有效的解决方案。解析 xml 时,设置attr_prefix=''为从键中删除所有 @。
以下更改对我有用:
with open('response.xml','r') as res_file:
doc = xmltodict.parse(res_file.read(), attr_prefix='')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2071 次 |
| 最近记录: |