ホームページ  >  記事  >  バックエンド開発  >  Pythonランタイムメソッド

Pythonランタイムメソッド

高洛峰
高洛峰オリジナル
2017-03-02 11:07:061441ブラウズ

この記事では、主にいくつかの Python ランタイム メソッドを詳細に紹介し、各ランタイム メソッドの長所と短所を分析しています。興味のある友人は参考にしてください。私が見た最初のものは、次のような手書きのものでした。

出力は次のとおりです:

➜ Python python time_1.py

0:00:00.280797

もう1つの方法はtimeitモジュールを使用することです。使用方法は次のとおりです:

 import datetime
 def time_1():

 begin = datetime.datetime.now()

 sum = 0

 for i in xrange(10000000):

  sum = sum + i

 end = datetime.datetime.now()

 return end-begin
print time_1()

次のように、この timeit モジュールをコマンドラインで使用することもできます:

In [5]: import timeit
In [6]: timeit.timeit("sum(range(100))")
Out[6]: 1.2272648811340332


注:

timeit モジュールはより正確な時刻を取得するためにプログラムを複数回実行するため、繰り返し実行する必要があります。衝撃を避けられること。たとえば、x.sort() などの操作の場合、最初の実行後、後続の操作はすでに並べ替えられているため、精度が影響を受けます。

別の方法は cProfile モジュールを使用することです。コードは次のとおりです。名前は time_1.py:

➜ Python python -m timeit -s"import time_1 as t" "t.time_1()"
0:00:00.282044
10 loops, best of 3: 279 msec per loop

プログラムの実行結果は次のとおりです:

 import datetime

 def time_1():

 begin = datetime.datetime.now()

 sum = 0

 for i in xrange(10000000):

  sum = sum + i

 end = datetime.datetime.now()

 return end-begin



 if __name__ == '__main__':

 print time_1()

import cProfile

 cProfile.run('time_1()')

先頭のコードの最後の行は cProfile .run('main()') で、main() が存在しないことを示します。main() を関数名に変更するだけです。

以上がこの記事の全内容です。Pythonプログラミングを学ぶ皆さんのお役に立てれば幸いです。

Python 実行時間メソッドに関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。