[python] Why does range(start, end) not include end?