0

Need explanation on this code I came across in a challenge

a = [1, 1, 2, 3, 5, 8] for a[1] in a: pass print(a) #output: [1, 8, 2, 3, 5, 8]

18th Apr 2020, 12:51 PM
António
António - avatar
2 ответов
+ 4
Are you familiar with for loop? a = [ 1, 1, 2, 3, 5, 8] If you simply execute for i in a: print(i) It will print all the elements of a because every time it is assigned the next element of list. in the end of the loop, i is assigned the value of last element. Similarly for a[1] in a: pass As the loop is executed a [1] is first assigned 1 Then a[1]. = 1 a[1]. = 2 a[1] = 3 a[1] = 5 a[1] = 8 At the end of the loop, the element at index 1 is replaced with the last element that is 8. Put a print(a) in for loop and you can see this pattern. If you put another number after 8 in list, the element at index 1 will be replaced the value of that element.
18th Apr 2020, 1:02 PM
Utkarsh Sharma
Utkarsh Sharma - avatar
+ 1
Utkarsh Sharma I am familiar with for loop. I understood your explanation perfectly, thank you so much. I will most definetly put print(a) in for loop to see the pattern aswell!
18th Apr 2020, 1:09 PM
António
António - avatar