code: def walk(dir_pathname, recursive=True, topdown=True, followlinks=False):
      
      walk_func = get_dir_walker(recursive, topdown, followlinks)
      for root, dirnames, filenames in walk_func(dir_pathname):
          yield (root, dirnames, filenames)
docs: Walks a directory tree optionally recursively. Works exactly like
      :func:`os.walk` only adding the `recursive` argument.
  
      :param dir_pathname:
          The directory to traverse.
      :param recursive:
          ``True`` for walking recursively through the directory tree;
          ``False`` otherwise.
      :param topdown:
          Please see the documentation for :func:`os.walk`
      :param followlinks:
          Please see the documentation for :func:`os.walk`