これが私がやったことです。関数に1つ、Pythonファイル自体に1つの2つのプロシージャを作成しました。Pythonファイル自体のものは、まったく同じであっても、ほぼ2倍遅くなります。なぜ ?
以下は、P 要素の単なるループである 2 つの手順の例です。
次のpythonファイルがあります:
from time import *
P=1000000 #range of the 2 loops
def loop(N):
for k in range(N):
continue
start=time()
loop(P)
stop1=time()
for k in range(P):
continue
stop2=time()
print "time with function ",stop1-start
print "time without function ",stop2-stop1
これが私が得たものです(1000個のサンプルで試してみましたが、結果は次のとおりです):
time with function 0.0950000286102
time without function 0.15700006485
range の代わりに xrange を使用すると、次のようになります。
time with function 0.0460000038147
time without function 0.107999843597
つまり、リストを作成するのに 0.05 秒かかります
役に立たない質問かもしれませんが、誰かがなぜこれほど速く進んでいるのか知っていれば、喜んで教えてください