On Sat, May 1, 2010 at 7:46 AM, Jimbo <nill...@yahoo.com> wrote: > Hello I have a relatively simple thing to do; move an object from one > to list into another. But I think my solution maybe inefficient & > slow. Is there a faster better way to move my stock object from one > list to another? (IE, without having to use a dictionary instead of a > list or is that my only solution?) > > [code] > class stock: > > code = "NULL" > price = 0 > > > stock_list1 = [] > stock_list2 = [] > > def transfer_stock(stock_code, old_list, new_list): > """ Transfer a stock from one list to another """ > # is there a more efficient & faster way to > > index = 0 > > for stock in old_list: > > temp_stock = stock > > if temp_stock.code == stock_code: > new_list.append(temp_stock) > del old_list[index] > index += 1 > > return new_list[/code]
Does your code work correctly? Modifying old_list while iterating over it will not work the way you expect, unless you're careful. And what is the point of temp_stock? -- regards, kushal -- http://mail.python.org/mailman/listinfo/python-list