Вы можете использовать модуль десятичный для чисел произвольной точности:
import decimal
d2 = decimal.Decimal(2)
# Add a context with an arbitrary precision of 100
dot100 = decimal.Context(prec=100)
print d2.sqrt(dot100)
Если вам нужна такая же способность, связанная со скоростью, есть несколько других опций: [gmpy], 2 , cdecimal .