Форум сайта python.su
Здравствуйте!
Очень прошу помочь, кто может)
Мне нужно получать большие степени чисел (> 6 знаков показатель степени ). Pow(a,n) просто виснет…
Есть ли какая то возможность это сделать?
Заранее благодарю.
Отредактировано (Май 2, 2011 12:42:19)
Офлайн
Вот так надо?
>>> 3**123456
3031256384345081196398504328637131841689205666640860258550241766766150\
3045002178307292979104428140652418249787469900390049582440093860431354\
1096236622062497492588184142761404686216089091947145564717622719953106\
2334585797549670522024756065797551115193140382185004931080068692852585\
0396515581490840059635078662778195841712775440916498293871909179188482\
9029367239266256153769609089108834040130854037141287572078911495615683\
2183259098459787179813661230286220453043143397758019275376042989719056\
1100125353068703745988508687693292429471057565033535586730768624302792\
5092040178716203088862485995808249883031054376555124380584271902767083\
9570065807354771234849178795467870804964204576712310828536289139655865\
3903238862818223271054869303796274478878638310950557089324072101593435\
4110005008374954858463353197499441454628658817305479079587408340955688\
1751444703472186671416986916370962352764388188737211053706518896652624\
6894931718105304614757769812879719060520482955199759092755849038293984\
8133181924036723905361457426457522141973116434163016135664481992377016\
7184429557745470950778839542608412886809080638004687753504624985787724\
9372581776178845891057581242792130719771443468074772203623258174721329\
858292622493957236711762741662098441901305242190909201023......
Офлайн
Офлайн
Спасибо за ответы, но все равно долго…
Офлайн
doza_andНа моей машине это считается секунды 3.
Вот так надо?Вроде не виснет. Для плавающих чисел задача просто сложнее.>>> 3**123456
3031256384345081196398504328637131841689205666640860258550241766766150\
3045002178307292979104428140652418249787469900390049582440093860431354\
1096236622062497492588184142761404686216089091947145564717622719953106\
2334585797549670522024756065797551115193140382185004931080068692852585\
0396515581490840059635078662778195841712775440916498293871909179188482\
9029367239266256153769609089108834040130854037141287572078911495615683\
2183259098459787179813661230286220453043143397758019275376042989719056\
1100125353068703745988508687693292429471057565033535586730768624302792\
5092040178716203088862485995808249883031054376555124380584271902767083\
9570065807354771234849178795467870804964204576712310828536289139655865\
3903238862818223271054869303796274478878638310950557089324072101593435\
4110005008374954858463353197499441454628658817305479079587408340955688\
1751444703472186671416986916370962352764388188737211053706518896652624\
6894931718105304614757769812879719060520482955199759092755849038293984\
8133181924036723905361457426457522141973116434163016135664481992377016\
7184429557745470950778839542608412886809080638004687753504624985787724\
9372581776178845891057581242792130719771443468074772203623258174721329\
858292622493957236711762741662098441901305242190909201023......
Офлайн
Что значит долго? Какие у вас требования? У меня на машине за 0.03 секунды выполняется. Ваши 3 секунды это печать ответа скорее всего.
import time
t1=time.clock()
a=[i**123456 for i in range(10)]
t2=time.clock()
print (t2-t1)/10
Отредактировано (Май 2, 2011 20:53:12)
Офлайн
doza_and
прикольный способ!:P а как допустим узнать время чтения страницы?
urllib2.urlopen().read()
Отредактировано (Май 3, 2011 19:08:24)
Офлайн