Возведение чисел в степень до заданного предела (Python)

Тема: 
Циклы

Вывести степени натуральных чисел, не превосходящие данного числа n. Пользователь задает показатель степени и число n.

Алгоритм решения задачи:

  1. Ввести показатель степени и присвоить его переменной p.
  2. Ввести число n.
  3. Пока натуральное число (i) возведенное в степень p меньше или равно n, то
  4. выводить на экран i в степени p и
  5. увеличивать i на 1 (т.е. переходить к следующему натуральному числу).

# возведение чисел в заданную степень до заданного предела
p = int(input("Показатель степени: "))
n = int(input("Максимальный предел степени: "))
 
i = 1
while i**p <= n:
	print(i**p, end=' ')
	i += 1
print("\nПоследнее число, возводимое в степень:", i-1)

Примеры выполнения кода:

Показатель степени: 2
Максимальный предел степени: 100
1 4 9 16 25 36 49 64 81 100 
Последнее число, возводимое в степень: 10
Показатель степени: 3
Максимальный предел степени: 555
1 8 27 64 125 216 343 512 
Последнее число, возводимое в степень: 8

почему пишет ошибку в 5

почему пишет ошибку в 5 строке?

Возможно отступ неправильно

Возможно отступ неправильно сделали

а что вообще эта строка

а что вообще эта строка означает? не совсем понятно...