At 10:12 AM 9/15/2005, Christopher Arndt wrote:
Consider (5 lines instead of 7):
lists = [[], []]
for item in original_list:
lists[condition(item)].append(item)
list1 = lists[0]
list2 = lists[1]
This assumes condition() returns 0 or 1 (True)
or if you don't mind the result in sets (assumes unique elements):
set1 = set([x for x in original_list if cond(x)])
set2 = original_list - set1
Hi,
I wonder if there is a shorter form of the following idiom:
list1 = []
list2 = []
for item in original_list:
if condition(item):
list1.append(item)
else:
list2.append(item)
Consider (5 lines instead of 7):
lists = [[], []]
for item in original_list:
lists[condition(item)].append(item)
list1 = lists[0]
list2 = lists[1]
This assumes condition() returns 0 or 1 (True)
or if you don't mind the result in sets (assumes unique elements):
set1 = set([x for x in original_list if cond(x)])
set2 = original_list - set1
I can't send mail my usual way due to unknown problems. So am using gmail. Please relpy as always to [EMAIL PROTECTED]
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor