Reversing a List¶
We can use the looping ability of computers, plus the indexing ability, to manipulate lists in interesting and even surprising ways. In the below program, we use an accumulator, which is something that accumulates values. We start with the accumulator
soFar set to an empty list – a list with nothing in it. As the program executes, it appends items from the
source list into the
] around the value in the
source at the current value of
index. This is needed because you can only concatenate two lists together. Try removing the
]. What error do you get?
- Because we started at 0 and went to len(source).
- That is the normal way of accessing each element, one at a time.
- Because we put the new element ahead of the others in soFar.
- If we had done soFar = soFar + [source[index]], soFar would have just duplicated the list, in order.
- Because of the square brackets around source[index].
- We need those in order to add elements into the list. You can only add a list to a list.
csp-16-5-1: Why did the code above end up reversing the list?
Discuss topics in this section with classmates.