On Wed, Oct 24, 2012 at 09:27:30PM +0500, Saad Javed wrote: > Hi, > > a = [['jimmy', '25', 'pancakes'], ['tom', '23', 'brownies'], ['harry', > '21', 'cookies']] > for i in a: > if (i[1] == '25' or i[1] == '26'): > print 'yes' > else: > print 'Not found' > > This prints: > yes > not found > > I want it to print "yes" for each positive match but nothing for a negative > match. However if all matches are negative, I want it to print "Not found" > once (That bit the code already does). I do I get it to print "yes" only in > a mix result situation? > > Saad
I am sure you have some answer(s) already. I wanted to add a different solution ------------------------ a = [['jimmy', '25', 'pancakes'], ['tom', '23', 'brownies'], ['harry', '21', 'cookies']] matches = [ i[1] in ('25', '26') for i in a ] ] if not any(matches): print "Not found" else: for match in matches: if match: print "Yes" ------------------------ Asokan Pichai -- _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor