Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

it's a very small thing, but the booleans in python can be added like integers, with True being 1 an False being 0. So your comprehension could have been:

    s = sum(i % 3 for i in range(1, 10\*8, 2))


i % 3 is three-valued: 0, 1 or 2.


I think OP meant to do this:

    s = sum(i % 3 == 0 for i in range(1, 10\*8, 2))




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: