Попробуйте это условие (без дополнительных вычислений):
def isqrt(n):
i = math.sqrt(n)
if i != int(i):
raise ValueError('input was not a perfect square')
return i
Если вам нужно вернуть int
(а не float
с конечным нолем), то либо назначить вторую переменную, либо дважды вычислите int(i)
.