code: def list(path, ext=None, start=None, stop=None, recursive=False):
          files = listflat(path, ext) if not recursive else listrecursive(path, ext)
          if len(files) < 1:
              raise FileNotFoundError('Cannot find files of type "%s" in %s'
                                      % (ext if ext else '*', path))
          files = select(files, start, stop)
          return files