科学の箱

科学・IT・登山の話題

Python

automated the boring – day8

投稿日:2018年2月28日 更新日:

https://automatetheboringstuff.com/chapter15/

さてプログラムを実行しているときに案外出てくる要件が時間計測。

例えばアルゴリズム間でパフォーマンスを比較するとか、経過時間に基づいてファイルをローテーションさせる。プログラムの開始時間と終了時間を記録するなどいろいろ考えられる。

pythonでもすでにtimeパッケージとして用意されているので使い方を確認する。


import time
def calcProd():
  # Calculate the product of the first 100,000 numbers.
  product = 1
  for i in range(1, 100000):
    product = product * i
  return product

startTime = time.time()
prod = calcProd()
endTime = time.time()
print('The result is %s digits long.' % (len(str(prod))))
print('Took %s seconds to calculate.' % (endTime - startTime))

こちらを実行すると以下のように時間が計測される。

$ python timex.py
The result is 456569 digits long.
Took 16.528652667999268 seconds to calculate.

次はsleep。これも重要である。入力と入力の間に一定の時間待ちを入れるとか、polling処理で受け付けているときにバッファを与えるとかいろいろな使い道がある。

<blockquote>> import time
>>> for i in range(3):
... print('tick')
... time.sleep(2)
... print('tock')
... time.sleep(2)
...
tick
tock
tick
tock
tick
tock</blockquote>

メタ情報

inarticle



メタ情報

inarticle



-Python
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

数字、計算、文字列を画面出力

Hello Worldができたので、いろいろな出力を試してみる。 出力はprint関数を使えばよい。 まずは数値から試してみる。数値は文字列と違い引用符で囲む必要はない。画面に直接表示するので変数は使 …

no image

jupyterで目的のディレクトリから実行する方法

AnacondaをインストールするとJupyter Notebookを実行するショートカットが作成される。これをクリックするとJupyter Notebookは起動できるわけだが、残念ながら必要なファ …

no image

タプルの操作

タプルはPythonで提供されているデータ構造の一つ。タプルは固定長で変更できない複数の値の集合である。 タプルオブジェクト (tuple object) — Python 3.8.0 ドキュメント …

no image

タイタニックデータでEDA-2

前回は、タイタニックデータについてはビジュアライズしてデータについて理解を深めた。 今回はデータをいじって機械学習に使えるようにする。 機械学習をするために必要な処理は3つある。 null値の置換 余 …

no image

蟻本 P42 硬貨の問題

貪欲法の基本 その時点で最善の手を尽くす 尽くした結果を目的とする値に反映させる。 次善の手になるようにする。 1に戻る 硬貨の問題 A=int(input()) *C,=map(int,input( …

2018年2月
« 1月   3月 »
 1234
567891011
12131415161718
19202122232425
262728  

side bar top



アーカイブ

カテゴリー