Swap two lists in python

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 ?

Answers


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)]

Need Your Help

As of Java 7 update 45, one can no longer lookup manifest information without triggering a warning?

java applet manifest java-web-start security-warning

Unfortunately, the workaround given by Oracle and others here (Java applet manifest - Allow all Caller-Allowable-Codebase) for getting around the 7 update 45 problem does NOT work if your app needs...

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.