My code is below. I'm also a newbie but I believe its not necessary to do this "n = number", as you are already storing the value in "number". So I did this "square_list.append(number ** 2)"
Which appends the square of "number" to square_list. Run my code below and you will see the list been built up on each pass of the for loop and then you will finally see what the sort does.
Also note I don't have "square_list.sort()" in the for loop. Again I think its bad coding, perhaps, to sort on every pass of the for loop. So I just sort it after "square_list" is fully populated.
My two cents!!
start_list = [5, 3, 1, 2, 4]
square_list = 
for number in start_list:
square_list.append(number ** 2)