【Python】指定した時間でプログラムの実行を終わらす方法
やりたいこと
タイトル通り、指定した時間でプログラムを終わらしたい。
例えば実行して5秒でプログラムが終わる。みたいな。
実現方法
一言でいうと、「whileで何秒か経ったらループを抜けてsys.exit()で終わらせられる。」
コードと実行結果
コード
import time
from datetime import datetime, timedelta
import sys
def test1():
starttime = datetime.now()
#シミュレーション時間を5秒に設定
endtime = starttime + timedelta( seconds = 5)
print("Simulation start time:",starttime.strftime("%Y/%m/%d %H:%M:%S"))
#シミュレーション時間をカウント
while endtime > datetime.now():
now = datetime.now()
print("Simulation time:",now.strftime("%Y/%m/%d %H:%M:%S"))
time.sleep(1)
#シミュレーション終了
print("Simulation end date:",endtime.strftime("%Y/%m/%d %H:%M:%S"))
print("##############simulation END##############")
sys.exit()
def main():
print("##############simulation START##############")
test1()
if __name__ == "__main__":
main()
実行結果
> py sample.py
##############simulation START##############
Simulation start time: 2022/05/11 21:14:03
Simulation time: 2022/05/11 21:14:03
Simulation time: 2022/05/11 21:14:04
Simulation time: 2022/05/11 21:14:05
Simulation time: 2022/05/11 21:14:06
Simulation time: 2022/05/11 21:14:07
Simulation end date: 2022/05/11 21:14:08
##############simulation END##############
よし。
終わりー。
この記事が気に入ったらサポートをしてみませんか?