Pythonで関数定義

前回でタイマーは完成しましたが、あれではタイマーを起動させようと思うたびにコードを1から書く必要があります。
なんども使うプログラムを関数として定義してしまうと、関数を呼び出すだけで気軽にプログラムを起動させることができます。

今回は以下のプログラムを関数化します。

import datetime
now = datetime.datetime.now()
goal = now + datetime.timedelta(minutes = 5)
target = datetime.datetime.now()
while target != goal:
    if target.hour == goal.hour and target.minute == goal.minute:
            print("Time is up!!")
            break
    print(goal - target)
    target = datetime.datetime.now()

前回作ったタイマーの5分バージョンです。
関数の定義の仕方は簡単で、以下のコードを最初に追加します。

def (関数名)():

注意すべきことは、さっき書いたコードのインデントをすべて1つずつ下げる必要があるということです。
今回は関数名をtimerとして次のようにしました。

def timer():
   import datetime
   now = datetime.datetime.now()
   goal = now + datetime.timedelta(minutes = 5)
   target = datetime.datetime.now()
   while target != goal:
        if target.hour == goal.hour and target.minute == goal.minute:
               print("Time is up!!")
               break
        print(goal - target)
        target = datetime.datetime.now()

これを書いておくことで、インタプリタを起動させている間はtimer()で5分タイマーを何度でも起動させることができます。

この記事が気に入ったらサポートをしてみませんか?