今日はpythonで『高性能タイマー(分,秒を選択可)』を作ってみました!
作る工程を説明しているのでぜひ見ていってください!
少しコードが長めかもしれないです!
関☆数☆作☆成
おなじみの作業をしていっきまーす()
まずタイマーはtimerと書くので
def timer():
と書いてtimer関数を作成します!
その前にタイマーはO秒間待つという作業が必要なので
from time import sleep
でタイム関数からスリープ関数(「O秒間待つ」という処理ができる関数)を呼び出します。
ここまでの処理をコードで表すと
from time import sleep def timer():
こうなりますね!
分,秒タイマーのどちらかを選択
タイトルにもある通り分のタイマーか秒のタイマーかを選択させる画面を作ります!
“分”と入力すれば分タイマーになり、”秒”と入力すれば秒タイマーになるようにコードを書いていきます
今まではint(input(色々))などで数字で選択させていましたが、str()を使えば普通に文字でも入力できるということに気が付いたので今回はstr(input())を使って直接文字を入力させたいと思います。
まず秒か分かを選択させるため
str(input(“タイマーの種類を入力してください(分,秒):”))
こうして秒か分かを入力させます。
そしてこの処理をselectionという変数に紐付けます
from time import sleep def timer(): selection = str(input("タイマーの種類を入力してください(分,秒):"))
これでタイマーの種類を入力させるところまでできました!
次にselection(入力された文字列)が”分”という文字列と一致したらOOをし、”秒”という文字列と一致した場合△△をするみたいなプログラムを書いていきます
from time import sleep def timer(): selection = str(input("タイマーの種類を入力してください(分,秒):")) if (selection == "分"):
これは『selection(入力された文字列)が”分”という文字列と一致したら…』までの処理なので…の後、「OOをする」というところを書いていきます。
まず何分何秒測るのかを入力させます。
それには高頻度で使っていたint(input(色々))を使います。
これを変数と結びつけることで入力された数値=『その変数』
ということになるので
from time import sleep def timer(): selection = str(input("タイマーの種類を入力してください(分,秒):")) if (selection == "分"): min = int(input("測る時間を入力してください(分):")) sec = int(input("測る時間を入力してください(秒):"))
これでmin変数が分になり、sec変数が秒になりました!
あとは”タイマーがセットされました O分O秒”とかを表示して
minの回数分60秒待ち、secの回数分1秒待ち、終わったら“タイマーが終了しました“という文字列を表示すればいいので、
from time import sleep def timer(): selection = str(input("タイマーの種類を入力してください(分,秒):")) if (selection == "分"): min = int(input("測る時間を入力してください(分):")) sec = int(input("測る時間を入力してください(秒):")) print("*タイマーがセットされました {}分{}秒*".format(min,sec)) for m in range(min): sleep(60) for s in range(sec): sleep(1) print("タイマーが終了しました!")
これでOKですね
あとは秒バージョンだけです!
秒タイマーの処理
最後に秒タイマーの処理を書いていきます!
秒と入力したら、秒タイマーに切り替え
(入力された数値) × 1秒を繰り返し、その処理が終わったら”タイマーが終了しました!”
という文字を表示させれば秒タイマーの処理は完了です。
なのでコードは
from time import sleep def timer(): selection = str(input("タイマーの種類を入力してください(分,秒):")) if (selection == "分"): min = int(input("測る時間を入力してください(分):")) sec = int(input("測る時間を入力してください(秒):")) print("*タイマーがセットされました {}分{}秒*".format(min,sec)) for m in range(min): sleep(60) for s in range(sec): sleep(1) print("タイマーが終了しました!") elif (selection == "秒"): sec = int(input("測る時間を入力してください(秒):")) print("*タイマーがセットされました {}秒*".format (sec)) for s in range(sec): sleep(1) print("タイマーが終了しました!")
で完了です!
あとは関数を呼び出すだけなので、
timer()でtimer関数を呼び出します
from time import sleep def timer(): selection = str(input("タイマーの種類を入力してください(分,秒):")) if (selection == "分"): min = int(input("測る時間を入力してください(分):")) sec = int(input("測る時間を入力してください(秒):")) print("*タイマーがセットされました {}分{}秒*".format(min,sec)) for m in range(min): sleep(60) for s in range(sec): sleep(1) print("タイマーが終了しました!") elif (selection == "秒"): sec = int(input("測る時間を入力してください(秒):")) print("*タイマーがセットされました {}秒*".format (sec)) for s in range(sec): sleep(1) print("タイマーが終了しました!") timer()
これで実行すれば作動するはずです!
早速実行してみます
無事成功しました!
みんなも是非やってみてくださーい!
意見や要望などありましたら気軽にコメントしてください!
それではー!see you next time!:D
コメント