🚄

【Python】関数実行速度を速めたいときの小技

2022/06/05に公開

初めに

なんとなくコードをいろいろ書いていて,同じ処理を複数回繰り返して処理したいときに関数自体が複雑で実行に時間がかかるときにどうにかして速度を速めたいと考えて思いついたコードを公開します.

コード詳細

import threading, time

def a():
    # 実行内容

while True:
    threading.Thread(target=a).start()
    time.sleep(1)

解説

構造は至ってシンプルですね.
定義した関数をwhile文の中に組み込んであげるだけでなく,threadingを使うことでsleep時間通りに動いてくれます.ただ,難しいのは前の処理が終わる前に次の実行が進むので,内容によっては重複したり,それに付随するエラーが出たり...といろいろ苦戦します.私自身もまだ苦戦しています.

まとめ

  • 定義した関数をthreadingにより実行
  • 注意喚起: Webスクレイピングなど他の方の迷惑になる行為はやめましょう

使いどころは作成者がそれぞれ見つけるとして,シンプルだけどちょっと早くできる小技を紹介しました.実行速度が遅くて悩んでいる方は,一度検討してみてはいかがでしょうか.

ここまでお読みいただきありがとうございました.

REO

(Twitter: @leqcy5)

Discussion