input: 
  def print_grade_table(students):
      """ Print a formatted table of grades for a given set of students.
      >>> print_grade_table([
      ...     {'name': "John", 'grade': 92},
      ...     {'name': "Alice", 'grade': 95},
      ...     {'name': "Bob", 'grade': 87}
      ... ])
      Name     Grade
      --------------
      John     92
      Alice    95
      Bob      87
      """
      max_name_length = max(len(student['name']) for student in students)
      line_template = "{{name:<{max_name_length}}}   {{grade}}".format(max_name_length=max_name_length)
      header = line_template.format(name='Name', grade='Grade')
      sep = '-' * len(header)
      print(header)
      print(sep)
      for student in students:
          print(line_template.format(**student))
  
output:     max_name_length = max(len(student['name']) for student in students)
      line_template = "{{name:<{max_name_length}}}   {{grade}}".format(max_name_length=max_name_length)
      header = line_template.format(name='Name', grade='Grade')
      sep = '-' * len(header)
      print(header)
      print(sep)
      for student in students:
          print(line_template.format(**student))