The idea is quite simple you start with a list of numbers and for every number in this list:
You square this number and add it to another list. Once you've done this with every number in the initial list you sort the new list and print it.
Now this for every number in this list part is done by the for loop:
for number in start_list:
.append(value) does (on lists) is to just add the value in its parenthesis to the very end of the list for example:
simple_list = 
print simple_list # -> [1,2]
So what you (@kimkp) did was pretty much what you should do. The only part that is not that necessary is to have the sorting of that list inside of the loop. What it does is that it sorts the list (from lowest to highest number) in every loop but as you aren't doing anything with the list in the loop except adding new numbers you could as well do this sorting once after the loop is done (as @consuellar did).
@consuellar of course you could as well add all the numbers by hand using the append method 5 times in a row but using a for loop requires 2 lines of code for any given number of elements in the list whereas you're version requires 1 line of code for every element in the list. Try this with a list of 100 entries and you might be faster calculating the results by hand
And as @nimblenavigator realized when you do not append but assign the value you overwrite the list with a number, so you essentially lose all the information but the very last entry of the original list (squared) and you can no longer apply list methods to your variable because now it is no longer a list but just that last number ( in this case an integer number).