如何从findall结果中仅打印出孩子?

时间:2018-10-29 22:56:04

标签: openxml elementtree

这是xml标记

  <p:transition spd="slow">
    <p:push dir="u"/>
  </p:transition>

这是我的代码:

    namespaces = {
       'p': 'http://schemas.openxmlformats.org/presentationml/2006/main'
    }

    transitions = et.findall('p:transition', namespaces)
    if transitions:
        # Only worry about the first node for now
        for p in transitions[0].iter():
            print p.tag, p.text

打印输出为

{http://schemas.openxmlformats.org/presentationml/2006/main}transition

{http://schemas.openxmlformats.org/presentationml/2006/main}push None

我想跳过p:transition节点。我怎么知道p:transitionp:push的父节点?

此外,是否可以轻松地从标签打印输出中剥离扩展的名称空间前缀:{http://schemas.openxmlformats.org/presentationml/2006/main}(或者在这种情况下,p:push也可以)

0 个答案:

没有答案