I have a list of 2 lists, which are of equal size, in python like:
list_of_lists = [list1, list2]
In a for loop after doing some processing on both list1
and list2
, I have to swap them so that list1
becomes list2
and list2
becomes a list initialized to all zeros. So at the end of the iteration the list_of_lists has to look like:
list_of_lists = [list1 which has contents of list2, list2 which has all zeros]
In C, one could just copy the pointers of list2
and list1
and then point list2
to a list initialized to all zeros. How do I do this in python ?
It sounds like you are mainly working with list1
and list2
inside the loop. So you could just reassign their values:
list1 = list2
list2 = [0]*len(list2)
Python also allows you to shorten this to a one-liner:
list1, list2 = list2, [0]*len(list2)
but in this case I find the two-line version more readable. Or, if you really want list_of_lists
, then:
list_of_lists = [list2, [0]*len(list2)]
or if you want both:
list1, list2 = list_of_lists = [list2, [0]*len(list2)]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With