Advertisement
Guest User

Untitled

a guest
Apr 20th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.87 KB | None | 0 0
  1. """
  2. Return list of all paths to sub folders
  3.  
  4. :param path: string path to work on
  5. :param root: string root path to sto at
  6. :param reversed: boolean return a reverse sortd list
  7. :param ret: list of sub paths, used for recoursive calls internally
  8.  
  9. :return: list of sub paths
  10. :rtype: list
  11. """
  12. def sub_paths(path, root=None, reversed=False, ret=None):
  13.     if ret == None: ret = [path] # default return list empty, allocate new list
  14.     next = os.path.dirname(path)
  15.    
  16.     # return if we ran out of parts or hit the root
  17.     if next == "" or root == next:
  18.         if root == next: ret.append(next)
  19.         if reversed: return ret.reverse()
  20.         return ret
  21.    
  22.     ret.append(next)
  23.     sub_paths(next, root, reversed, ret)
  24.    
  25.     return ret
  26.  
  27. sub_paths("C:/Users/wus/Drones/Tools")
  28. print("")
  29. sub_paths("C:/Users/wus/Drones/Tools", None, True)
  30. print("")
  31. sub_paths("C:/Users/wus/Drones/Tools", "C:/Users", True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement