指数モジュロを計算するためにpow関数にかかる時間を計算しようとしています。g、x、pの値をハードコードすると、コードはエラーになり、pow関数に値を配置すると、コードがハングします。time()とclock()を使用してこのコードにかかる時間を計算しているとき、同じコードが効率的に機能しています。精度が欲しかったので、clock()関数とtime()関数でテストした後、timeitモジュールに移動しました。
このコードは、意味のあるpow(2、3、5)などの小さな値で正常に機能します。timeitモジュールを使用して時間を計算する効率をどのように改善できますか。
また、私はPythonの初心者です。コードに愚かな間違いがあった場合は、ご容赦ください。
import math
import random
import hashlib
import time
from timeit import Timer
g = 141802876407053547664378835005750805370737584038368838959151050908654130616798415530564917923311706921535439557793280725844349256960807398107370211978304
x = 1207729835787890214
p = 4870352607375058055471602136317178172283784073796673298937466544646468718314482464390112574915498953621226853454222898392076852427324057496200810018794472
t = Timer('pow(g,x,p)', 'import math')
z = t.timeit()
print ('the value of z is: '), z
ありがとう