input: Write a Python function that takes a string composed of several groups of nested parentheses separated by spaces. For each group, return the maximum nesting depth of the parentheses. For instance, (()()) has a maximum nesting depth of two, while ((())) has a depth of three.
  
  >>> parse_nested_parens('(()()) ((())) () ((())()())')
  [2, 3, 1, 3]
output: def parse_nested_parens(s):
      def max_depth(group):
          depth = max_depth = 0
          for char in group:
              if char == '(':
                  depth += 1
                  if depth > max_depth:
                      max_depth = depth
              elif char == ')':
                  depth -= 1
          return max_depth
      groups = s.split()
      return [max_depth(group) for group in groups]