@Vadim231

Как сделать чтобы если число было не целое, выдавало -1 в ответ?

def get_row_len(row, col, cell_index):
    if (cell_index / row) - col == float:
        return -1

мне надо чтобы если ответ в действие (cell_index / row) - col было целое, если оно не целое писало -1
Я так написал, что тут не так?
  • Вопрос задан
  • 311 просмотров
Пригласить эксперта
Ответы на вопрос 5
@SolidMinus
Ты сравниваешь некоторое число с типом, тебя ничего не смущает?

def get_row_len(row, col, cell_index):
    A = (cell_index / row) - col
    if round(A) != A:
        return -1
Ответ написан
Комментировать
Astrohas
@Astrohas
Python/Django Developer
is_float = lambda x: bool(x % 1 )
def get_row_len(row, col, cell_index):
    if is_float(cell_index / row - col):
        return -1

или сразу так
def get_row_len(row, col, cell_index):
    if (cell_index / row - col) % 1:
        return -1
Ответ написан
def get_row_len(row, col, cell_index):
    a = (cell_index / row) - col
    if int(a) != a:
        return -1
Ответ написан
kentuck1213
@kentuck1213
def get_row_len(row, col, cell_index):
    if type((cell_index / row) - col)) == float:
        return -1
//////////
isinstance(1.1, float)
>>> True
Ответ написан
метод is_integer()

a = (cell_index / row) - col
if a.is_integer():
  return a
else:
  return -1
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы