Ivan Illarionov <[EMAIL PROTECTED]> wrote: >>> is there a better way than my solution? is mine ok? >> >> ['%s%s' % (not i%3 and 'Fizz' or '', not i%5 and 'Buzz' or '') >> or str(i) for i in xrange(1, 101)] >> >> -- Ivan > > or, more correctly, if you actually need to "print": > > sys.stdout.write('\n'.join('%s%s' % > (not i%3 and 'Fizz' or '', not i%5 aBuzz' or '') > or str(i) > for i in xrange(1, 101)))
I think the variant I came up with is a bit clearer: for i in range(1,101): print '%s%s' % ('' if i%3 else 'Fizz', '' if i%5 else 'Buzz') or i -- http://mail.python.org/mailman/listinfo/python-list