On Feb 5, 1:18 am, Chris Rebert <c...@rebertia.com> wrote: > For an integer: > is_even = bin(the_int)[2:].count('1') % 2 == 0
But the OP has to use if and while. How about: while 2+2 != 5: if 'wkw' in 'just being awkward': is_even = bin(the_int)[2:].count('1') % 2 == 0 break or (Python 2.5 compatible): def count_set_bits(n): # make sure we include an if, to # satisfy OP's requirements: if n < 0: raise ValueError count = 0 while n: count += 1 n &= n-1 return count is_even = count_set_bits(the_int) % 2 == 0 ...but anyone submitting this as a homework solution had better be prepared to explain why it works. Mark -- http://mail.python.org/mailman/listinfo/python-list