list=[3, 1, -1]
list [-1]=list [-2]
print(list)
ok my last post was closed, even though this is not about slicing. There are no semicolons. The question is an exam question from the Python Institute course. I do not understand why the result of this calculation is [3, 1, 1]
Can someone explain me how this works?
CodePudding user response:
list[-1]
means "the last item in the list".
list[-2]
means "the next-to-last item in the list".
So, list [-1]=list [-2]
means "assign the last item in the list to be the same as the next-to-last item in the list".
Honestly, I don't understand your confusion...
CodePudding user response:
A negative index in a python list is counting from the end. I.e., l[-1] points to the last element in the list, l[-2] to the second last and so forth.
Thus
l[-1]=l[-2]
takes the second last value and writes it to the last element. As this is 1 the last element is set to 1, too.