最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中xmltodict模塊對XML的用法詳解

 更新時間:2023年07月26日 10:11:28   作者:生有涯,知無涯  
這篇文章主要介紹了Python中xmltodict模塊對XML的用法詳解,xmltodict?是一個用來處理xml數(shù)據(jù)的很方便的模塊,包含兩個常用方法parse和unparse,本文通過代碼介紹了用法,需要的朋友可以參考下

1. parse

  • xmltodict.parse()方法可以將xml數(shù)據(jù)轉(zhuǎn)為python中的dict字典數(shù)據(jù):
>>> import xmltodict
>>> xml_str = """
... <xml>
... <ToUserName><![CDATA[gh_866835093fea]]></ToUserName>
... <FromUserName><![CDATA[ogdotwSc_MmEEsJs9-ABZ1QL_4r4]]></FromUserName>
... <CreateTime>1478317060</CreateTime>
... <MsgType><![CDATA[text]]></MsgType>
... <Content><![CDATA[你好]]></Content>
... <MsgId>6349323426230210995</MsgId>
... </xml>
... """
>>>
>>> xml_dict = xmltodict.parse(xml_str)
>>> type(xml_dict)
<class 'collections.OrderedDict'>  # 類字典型,可以按照字典方法操作
>>>
>>> xml_dict
OrderedDict([(u'xml', OrderedDict([(u'ToUserName', u'gh_866835093fea'), (u'FromUserName', u'ogdotwSc_MmEEsJs9-ABZ1QL_4r4'), (u'CreateTime', u'1478317060'), (u'MsgType', u'text'), (u'Content', u'\u4f60\u597d'), (u'MsgId', u'6349323426230210995')]))])
>>>
>>> xml_dict['xml']
OrderedDict([(u'ToUserName', u'gh_866835093fea'), (u'FromUserName', u'ogdotwSc_MmEEsJs9-ABZ1QL_4r4'), (u'CreateTime', u'1478317060'), (u'MsgType', u'text'), (u'Content', u'\u4f60\u597d'), (u'MsgId', u'6349323426230210995')])
>>>
>>> for key, val in xml_dict['xml'].items():
...     print key, "=", val
... 
ToUserName = gh_866835093fea
FromUserName = ogdotwSc_MmEEsJs9-ABZ1QL_4r4
CreateTime = 1478317060
MsgType = text
Content = 你好
MsgId = 6349323426230210995
>>>

2. unparse

  • xmltodict.unparse()方法可以將字典轉(zhuǎn)換為xml字符串:
xml_dict = {
    "xml": {
        "ToUserName" : "gh_866835093fea",
        "FromUserName" : "ogdotwSc_MmEEsJs9-ABZ1QL_4r4",
        "CreateTime" : "1478317060",
        "MsgType" : "text",
        "Content" : u"你好",
        "MsgId" : "6349323426230210995",
    }
}
>>> xml_str = xmltodict.unparse(xml_dict)
>>> print xml_str
<?xml version="1.0" encoding="utf-8"?>
<xml><FromUserName>ogdotwSc_MmEEsJs9-ABZ1QL_4r4</FromUserName><MsgId>6349323426230210995</MsgId><ToUserName>gh_866835093fea</ToUserName><Content>你好</Content><MsgType>text</MsgType><CreateTime>1478317060</CreateTime></xml>
>>>
>>> xml_str = xmltodict.unparse(xml_dict, pretty=True) # pretty表示友好輸出
>>> print xml_str
<?xml version="1.0" encoding="utf-8"?>
<xml>
    <FromUserName>ogdotwSc_MmEEsJs9-ABZ1QL_4r4</FromUserName>
    <MsgId>6349323426230210995</MsgId>
    <ToUserName>gh_866835093fea</ToUserName>
    <Content>你好</Content>
    <MsgType>text</MsgType>
    <CreateTime>1478317060</CreateTime>
</xml>
>>>

下面是一個簡單的示例XML文件:

<?xml version="1.0"?>
<mydocument has="an attribute">
    <and>
        <many>elements</many>
        <many>more elements</many>
    </and>
    <plus a="complex">
        element as well
    </plus>
</mydocument>

這是第三方包,在處理前先用pip來安裝

pip install xmltodict

可以像下面這樣訪問里面的元素,屬性及值:

 import xmltodict
with open("test.xml") as fd:          # 將XML文件裝載到dict里面
    doc = xmltodict.parse(fd.read())
    print(doc["mydocument"]["@has"])  # an attribute
    print(doc["mydocument"]["and"])   # OrderedDict([(u'many', [u'elements', u'more elements'])])
    print(doc["mydocument"]["and"]["many"])   # [u'elements', u'more elements']
    print(doc["mydocument"]["plus"]["@a"])    # complex
    print(doc["mydocument"]["plus"]["#text"]) # element as well

xmltodict 也有unparse函數(shù)讓您可以轉(zhuǎn)回XML。

該函數(shù)有一個streaming模式適合用來 處理不能放入內(nèi)存的文件,它還支持命名空間

到此這篇關(guān)于Python中xmltodict模塊對XML的用法詳解的文章就介紹到這了,更多相關(guān)xmltodict 模塊處理xml內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python+adb+monkey實現(xiàn)Rom穩(wěn)定性測試詳解

    python+adb+monkey實現(xiàn)Rom穩(wěn)定性測試詳解

    這篇文章主要介紹了python+adb+monkey實現(xiàn)Rom穩(wěn)定性測試詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python區(qū)塊鏈地址的簡版實現(xiàn)

    python區(qū)塊鏈地址的簡版實現(xiàn)

    這篇文章主要為大家介紹了python區(qū)塊鏈地址的簡版實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • python實現(xiàn)簡單日期工具類

    python實現(xiàn)簡單日期工具類

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)簡單日期工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • pytorch-autograde-計算圖的特點說明

    pytorch-autograde-計算圖的特點說明

    這篇文章主要介紹了pytorch-autograde-計算圖的特點,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 基于logstash實現(xiàn)日志文件同步elasticsearch

    基于logstash實現(xiàn)日志文件同步elasticsearch

    這篇文章主要介紹了基于logstash實現(xiàn)日志文件同步elasticsearch,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • python中MySQLdb模塊用法實例

    python中MySQLdb模塊用法實例

    這篇文章主要介紹了python中MySQLdb模塊用法,以實例形式詳細(xì)講述了MySQLdb模塊針對MySQL數(shù)據(jù)庫的各種常見操作方法,非常具有實用價值,需要的朋友可以參考下
    2014-11-11
  • python使用yaml格式文件的方法

    python使用yaml格式文件的方法

    本文主要介紹了python使用yaml格式文件的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Python實現(xiàn)的字典排序操作示例【按鍵名key與鍵值value排序】

    Python實現(xiàn)的字典排序操作示例【按鍵名key與鍵值value排序】

    這篇文章主要介紹了Python實現(xiàn)的字典排序操作,結(jié)合實例形式分析了Python針對字典分別按照鍵名key與鍵值value進(jìn)行排序的相關(guān)操作技巧,需要的朋友可以參考下
    2018-12-12
  • Python中使用MySQL模糊查詢的詳細(xì)方法

    Python中使用MySQL模糊查詢的詳細(xì)方法

    這篇文章主要介紹了Python中使用MySQL模糊查詢的方法,以下是一個使用pymysql進(jìn)行模糊查詢的詳細(xì)示例,包括安裝庫、連接數(shù)據(jù)庫、執(zhí)行查詢以及處理結(jié)果,需要的朋友可以參考下
    2024-06-06
  • python 寫一個水果忍者游戲

    python 寫一個水果忍者游戲

    這篇文章主要介紹了python 如何寫一個水果忍者游戲,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01

最新評論

巴东县| 开封市| 钟祥市| 湾仔区| 旬阳县| 岳普湖县| 堆龙德庆县| 理塘县| 临颍县| 黄山市| 贞丰县| 遂平县| 新和县| 达拉特旗| 嘉荫县| 衡东县| 突泉县| 德庆县| 孙吴县| 苍梧县| 丹寨县| 伊通| 巨鹿县| 馆陶县| 龙口市| 兰考县| 安徽省| 汉沽区| 商都县| 清新县| 琼海市| 武鸣县| 南汇区| 静安区| 鹤庆县| 东兰县| 武定县| 双桥区| 昭苏县| 衡阳市| 且末县|