科学の箱

科学・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

すべての要素が同じ値を持つ配列を生成

配列はリストから生成できるが、numpyでは様々な方法で目的とする配列を生成できる。 すべての要素が0である配列の生成 すべての要素が1である配列の生成 すべての要素が同じ値である配列の生成 すべての …

no image

flip, fliplr, flipudを使って配列要素を上下左右、左右、上下反転する

画像処理などでは要素の値を配列全体で反転したいときがある。このようなときに役に立つのがflip, fliplr, flipudである。 flipのマニュアル fliprのマニュアル flipudのマニ …

no image

automated the boring – day 3

https://automatetheboringstuff.com/ 今回はまずは文字列操作から。とりあえず基本のところを押さえておく。 print("Hello there!\nHow …

no image

python data scientist bootcamp

pythonでdata分析をしたいと思ったが学校に通う時間もお金もない。udemyで検索したところ英語版であるが1400円!でコースが見つかったのでこちらを受けることにした。 https://www. …

no image

pythonで地理情報を取り扱う

pythonでデータ分析をして地理情報に表示したいときに使うパッケージはplotlyである。 plotlyのchropleth map(階級区分図)を利用する。 plotlyについてはこちらでサンプル …

2018年2月
月 火 水 木 金 土 日
« 1月   3月 »
 1234
567891011
12131415161718
19202122232425
262728  

side bar top



アーカイブ

カテゴリー