首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将XML读入字典

将XML读入字典是指将XML格式的数据转换为Python字典格式。XML是一种常用的数据交换格式,而Python字典是一种常用的数据存储和操作方式。以下是一个简单的示例代码,使用Python的xml.etree.ElementTree模块将XML数据转换为Python字典:

代码语言:python
代码运行次数:0
复制
import xml.etree.ElementTree as ET

def xml_to_dict(xml_string):
    root = ET.fromstring(xml_string)
    return element_to_dict(root)

def element_to_dict(element):
    dict_repr = {}
    for child in element:
        key = child.tag
        value = element_to_dict(child)
        if key in dict_repr:
            if type(dict_repr[key]) is list:
                dict_repr[key].append(value)
            else:
                dict_repr[key] = [dict_repr[key], value]
        else:
            dict_repr[key] = value
    if element.text:
        dict_repr["text"] = element.text.strip()
    return dict_repr

使用示例:

代码语言:python
代码运行次数:0
复制
xml_string = "<root><name>John</name><age>30</age><city>New York</city></root>"
xml_dict = xml_to_dict(xml_string)
print(xml_dict)

输出结果:

代码语言:txt
复制
{'name': {'text': 'John'}, 'age': {'text': '30'}, 'city': {'text': 'New York'}}

注意,这个示例代码仅适用于简单的XML结构,对于复杂的XML结构可能需要进行更复杂的处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python二进制串转换为通用字符串

此时的lineVec的元素类型为string,但输出是仍然是 “b’heros\xff…..” ,仍然无法摆脱二进制标志的影响。然而,尴尬的是,在后边对以lineVec元素作为键的字典进行索引时,只能获得通用字符串的键。所以,每次索引都以KeyError退出。         在多次尝试之后,我发现:二进制串在经过str()函数转化之后,已经将所有的内容都转化成了一个通用的字符串。也就是说,“b’heros\xff……”中的所有字符都是可以用python的字符串处理手段处理的。         给定一个 word=”b’heros”,如果希望得到通用字符串形式的单词”heros”,那么我们可以直接取字符串word的第3至最后一个字母,或将“b’”直接替换掉:

02

python json

s=""" { "error_code": 0, "stu_info": [ { "id": 309, "name": "小白", "sex": "男", "age": 28, "addr": "河南省济源市北海大道32号", "grade": "天蝎座", "phone": "18512572946", "gold": 100 }, { "id": 310, "name": "小白", "sex": "男", "age": 28, "addr": "河南省济源市北海大道32号", "grade": "天蝎座", "phone": "18516572946", "gold": 100 } ] } """ 1、用json.loads载入j'son格式的字符串,转成字典 import json#引用json模块 res=json.loads(s) print(res)#打印字典 print(type(res))#打印res类型 print(res.keys())#打印字典的所有Key 2、json.load从文件中读入json格式字符串 import json f=open('stus.json',encoding='utf-8') user_dic=json.load(f) print(user_dic) 3、json.dumps 将字典转成json格式字符串 stus={'xiaojun':'123456','xiaohei':'7891','abc':'11111'}

02
领券