コロン区切りで時間のリストが渡されたときに合計する
作業時間の合計とか、簡単に計算する。コロン区切りフォーマットでない行はとばす。
timecalc.py
#!/bin/python
import re
mn_sum=0
with open("timelist.txt", "r") as f:
for line in f:
line=line.strip()
m=re.match(r'([\d\-]+):(\d+)',line)
if m :
hr=int(m.group(1))
mn=int(m.group(2))
if hr<0:
mn=mn*-1
mn_sum += hr*60+mn
hr_sum=mn_sum/60
mn_sum=mn_sum%60
print("%d:%d\n"%(hr_sum,mn_sum))
時間リストサンプル
timelist.txt
0:53
1:21
2:22
-2:40
----
----
-1:05
実行結果
python timecalc.py
0:51