code: def iter_sections(self, recursive=False, path=None, key='path'):
          
          for x in self.iter_all(recursive=recursive, path=path, key=key):
              if key is None:
                  if x.is_section:
                      yield x
              elif x[1].is_section:
                  yield x
docs: See :meth:`.iter_all` for standard iterator argument descriptions.
  
          Returns:
              iterator: iterator over ``(key, section)`` pairs of all sections
                  in this section (and sub-sections if ``recursive=True``).