當前位置: 首頁>>代碼示例>>Python>>正文


Python Folder.is_descendant_of方法代碼示例

本文整理匯總了Python中fswrap.Folder.is_descendant_of方法的典型用法代碼示例。如果您正苦於以下問題:Python Folder.is_descendant_of方法的具體用法?Python Folder.is_descendant_of怎麽用?Python Folder.is_descendant_of使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在fswrap.Folder的用法示例。


在下文中一共展示了Folder.is_descendant_of方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: add_node

# 需要導入模塊: from fswrap import Folder [as 別名]
# 或者: from fswrap.Folder import is_descendant_of [as 別名]
    def add_node(self, a_folder):
        """
        Adds a new node to this folder's hierarchy.
        Also adds it to the hashtable of path to node associations
        for quick lookup.
        """
        folder = Folder(a_folder)
        node = self.node_from_path(folder)
        if node:
            logger.debug("Node exists at [%s]" % node.relative_path)
            return node

        if not folder.is_descendant_of(self.source_folder):
            raise HydeException("The given folder [%s] does not"
                                " belong to this hierarchy [%s]" %
                                (folder, self.source_folder))

        p_folder = folder
        parent = None
        hierarchy = []
        while not parent:
            hierarchy.append(p_folder)
            p_folder = p_folder.parent
            parent = self.node_from_path(p_folder)

        hierarchy.reverse()
        node = parent if parent else self
        for h_folder in hierarchy:
            node = node.add_child_node(h_folder)
            self.node_map[str(h_folder)] = node
            logger.debug("Added node [%s] to [%s]" % (
                         node.relative_path, self.source_folder))

        return node
開發者ID:LestherSK,項目名稱:hyde,代碼行數:36,代碼來源:site.py


注:本文中的fswrap.Folder.is_descendant_of方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。