input: def find_extremes(lst):
      '''
      Implement a function that returns a tuple (x, y), where 'x' is
      the highest among negative numbers, and 'y' is the lowest among
      positive numbers in a given list.
      If there are no negative or positive numbers, return them as None.
  
      Examples:
      find_extremes([2, 4, 1, 3, 5, 7]) == (None, 1)
      find_extremes([]) == (None, None)
      find_extremes([0]) == (None, None)
      '''
output:     
      negative_numbers = [num for num in lst if num < 0]
      positive_numbers = [num for num in lst if num > 0]
  
      max_negative = max(negative_numbers) if negative_numbers else None
      min_positive = min(positive_numbers) if positive_numbers else None
  
      return (max_negative, min_positive)
  