14

私はPythonについてほとんど何も知らないが、3つの異なる言語でプログラムを書かなければならないと言うことから始めましょう(すでにJavaとC ++で行われています).

メソッドの実行時間を特定の回数測定し、全体の実行時間にかかった時間を出力できるようにする必要があります。

いえ

関数があります(A既知のサイズの配列です)。10回実行されるperformSearch(arrayTest)arrayTestA

A実行前から実行後までの時間を計る必要がありますA

4

5 に答える 5

13

timeit の使用方法については、こちらを参照してください。

同じファイルに performSearch という関数があると仮定すると、次の実行時間は機能します。

import timeit

def performSearch(array):
    array.sort()


arrayTest = ["X"]*1000

if __name__ == "__main__":
    print timeit.timeit("performSearch(arrayTest)","from __main__ import performSearch, arrayTest",number=10)

どちらが返されますか:

0.000162031766607
于 2013-09-25T16:57:44.197 に答える
10

次のようなことができます。

import time

start = time.time()
A()
end = time.time()
print "Took %f ms" % ((end - start) * 1000.0)
于 2013-09-25T17:00:06.517 に答える
2

よりシンプルなものが必要な場合

import time
startMillis = int(round(time.time() * 1000))
print startMillis
time.sleep(5) # this is your function that takes time to execute
endMillis = int(round(time.time() * 1000))
print endMillis

timeTaken = endMillis - startMillis
于 2013-09-25T17:00:36.800 に答える
1

はい、ちょうどいい時間です。

total= 0
for i in range(1000):
    start= time.clock()
    function()
    end= time.clock()
    total += end-start
time= total/1000
于 2013-09-25T17:01:18.590 に答える