def walk(self, where="<STR_LIT:/>"):
_tables()<EOL>self._check_if_open()<EOL>for g in self._handle.walk_groups(where):<EOL><INDENT>if getattr(g._v_attrs, '<STR_LIT>', None) is not None:<EOL><INDENT>continue<EOL><DEDENT>groups = []<EOL>leaves = []<EOL>for child in g._v_children.values():<EOL><INDENT>pandas_type = getattr(child._v_attrs, '<STR_LIT>', None)<EOL>if pandas_type is None:<EOL><INDENT>if isinstance(child, _table_mod.group.Group):<EOL><INDENT>groups.append(child._v_name)<EOL><DEDENT><DEDENT>else:<EOL><INDENT>leaves.append(child._v_name)<EOL><DEDENT><DEDENT>yield (g._v_pathname.rstrip('<STR_LIT:/>'), groups, leaves)<EOL><DEDENT>
Walk the pytables group hierarchy for pandas objects

        This generator will yield the group path, subgroups and pandas object
        names for each group.
        Any non-pandas PyTables objects that are not a group will be ignored.

        The `where` group itself is listed first (preorder), then each of its
        child groups (following an alphanumerical order) is also traversed,
        following the same procedure.

        .. versionadded:: 0.24.0

        Parameters
        ----------
        where : str, optional
            Group where to start walking.
            If not supplied, the root group is used.

        Yields
        ------
        path : str
            Full path to a group (without trailing '/')
        groups : list of str
            names of the groups contained in `path`
        leaves : list of str
            names of the pandas objects contained in `path`