<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 10.4.?查找節點的直接子節點 解析 XML 文檔時,另一個有用的己技巧是查找某個特定元素的所有直接子元素。例如,在語法文件中,一個 `ref` 元素可以有數個 `p` 元素,其中每一個都可以包含很多東西,包括其他的 `p` 元素。你只要查找作為 `ref` 孩子的 `p` 元素,不用查找其他 `p` 元素的孩子 `p` 元素。 你可能認為你只要簡單地使用 `getElementsByTagName` 來實現這點就可以了,但是你不可以這么做。`getElementsByTagName` 遞歸搜索并返回所有找到的元素的單個列表。由于 `p` 元素可以包含其他的 `p` 元素,你不能使用 `getElementsByTagName`,因為它會返回你不要的嵌套 `p` 元素。為了只找到直接子元素,你要自己進行處理。 ## 例?10.16.?查找直接子元素 ``` def randomChildElement(self, node): choices = [e for e in node.childNodes if e.nodeType == e.ELEMENT_NODE] chosen = random.choice(choices) return chosen ``` | | | | --- | --- | | \[1\] | 正如你在[例?9.9 “獲取子節點”](../xml_processing/parsing_xml.html#kgp.parse.gettingchildnodes.example "例?9.9.?獲取子節點")中看到的,`childNodes` 屬性返回元素所有子節點的一個列表。 | | \[2\] | 然而,正如你在[例?9.11 “子節點可以是文本”](../xml_processing/parsing_xml.html#kgp.parse.childnodescanbetext.example "例?9.11.?子節點可以是文本")中看到的,`childNodes` 返回的列表包含了所有不同類型的節點,包括文本節點。這并不是你在這里要查找的。你只要元素形式的孩子。 | | \[3\] | 每個節點都有一個 `nodeType` 屬性,它可以是`ELEMENT_NODE`, `TEXT_NODE`, `COMMENT_NODE`,或者其它值。可能值的完整列表在 `xml.dom` 包的 `__init__.py` 文件中。(關于包的介紹,參見[第?9.2?節 “包”](../xml_processing/packages.html "9.2.?包")。) 但你只是對元素節點有興趣,所以你可以過濾出一個列表,其中只包含 `nodeType` 是`ELEMENT_NODE`的節點。 | | \[4\] | 只要擁有了一個真實元素的列表,選擇任意一個都很容易。Python 有一個叫 `random` 的模塊,它包含了好幾個有用的函數。`random.choice` 函數接收一個任意數量條目的列表并隨機返回其中的一個條目。比如,如果 `ref` 元素包含了多個 `p` 元素,那么 `choices` 將會是 `p` 元素的一個列表,而 `chosen` 將被賦予其中的某一個值,而這個值是隨機選擇的。 |
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看