input: Write a function to generate a list of the first n perfect squares.
  assert generate_perfect_squares(5) == [1, 4, 9, 16, 25]
  assert generate_perfect_squares(3) == [1, 4, 9]
  assert generate_perfect_squares(0) == []
output: def generate_perfect_squares(n):
      return [i**2 for i in range(1, n+1)]