zoukankan      html  css  js  c++  java
  • 节点遍历相关操作

    from lxml import etree
    
    root = etree.Element("root")
    etree.SubElement(root, "child").text = "Child 1"
    etree.SubElement(root, "child").text = "Child 2"
    etree.SubElement(root, "another").text = "Child 3"
    root.append(etree.Entity("#234"))
    root.append(etree.Comment("some comment"))
    
    print('遍历所有节点,包括entity和comment')
    print(etree.tostring(root, pretty_print=True))
    print('
    ')
    
    print('遍历所有节点')
    for element in root.iter():
        print("%s - %s" % (element.tag, element.text))
    print('
    ')
    
    print('遍历所有child节点')
    for element in root.iter("child"):
        print("%s - %s" % (element.tag, element.text))
    print('
    ')
    
    print('遍历所有child节点和another节点')
    for element in root.iter("another", "child"):
        print("%s - %s" % (element.tag, element.text))
    print('
    ')
    
    print('遍历所有节点,包括entity和comment')
    for element in root.iter():
        if isinstance(element.tag, str):  # or 'str' in Python 3
            print("%s - %s" % (element.tag, element.text))
        else:
            print("SPECIAL: %s - %s" % (element, element.text))
    print('
    ')
    
    print('遍历所有节点')
    for element in root.iter(tag=etree.Element):
        print("%s - %s" % (element.tag, element.text))
    print('
    ')
    
    print('遍历所有entity')
    for element in root.iter(tag=etree.Entity):
        print(element.text)
    print('
    ')

    输出:

    遍历所有节点,包括entity和comment
    b'<root><child>Child 1</child><child>Child 2</child><another>Child 3</another>&#234;<!--some comment--></root>
    '
    
    
    遍历所有节点
    root - None
    child - Child 1
    child - Child 2
    another - Child 3
    <cyfunction Entity at 0x00000229A2BA41B8> - &#234;
    <cyfunction Comment at 0x00000229A2BA4048> - some comment
    
    
    遍历所有child节点
    child - Child 1
    child - Child 2
    
    
    遍历所有child节点和another节点
    child - Child 1
    child - Child 2
    another - Child 3
    
    
    遍历所有节点,包括entity和comment
    root - None
    child - Child 1
    child - Child 2
    another - Child 3
    SPECIAL: &#234; - &#234;
    SPECIAL: <!--some comment--> - some comment
    
    
    遍历所有节点
    root - None
    child - Child 1
    child - Child 2
    another - Child 3
    
    
    遍历所有entity
    &#234;

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  • 相关阅读:
    Codeforces 371D Vessels
    HDU1272小希的迷宫–并查集
    golang:exported function Script should have comment or be unexported
    动态规划--0,1背包问题(再也不怕类似背包问题了)
    golang数据结构之稀疏数组
    向github中已创建好的repository提交文件
    java(二)变量
    使用Git上传文件到github
    java(一)基础知识
    pytorch--基础类型之间的转换
  • 原文地址:https://www.cnblogs.com/shiliye/p/11759478.html
Copyright © 2011-2022 走看看