Hola compañer@s

Estaba dándole vueltas a como construir un cubo perfecto en python y bueno, partiendo de la teoria:
y=x^3
calculo su inversa:
x=y^3
log x = log y^3
3*log y = log x
log y = log x^(1/3)
y= x^(1/3)

Esta es mi versión simplificada que comparto con vosotr@s:

# -*- coding: utf-8 -*-

def validate_cube(value):
   base = int(round(value**(1.0/3), 0))
   return (base**3 == value, base)

if __name__ == '__main__':
   ok, base = validate_cube(input('Número a calcular si es cubo perfecto: '))
   if (ok):
       print 'Perfect cube of:', base
   else:
       print 'Not perfect cube'