37 lines
1.0 KiB
Python
Executable File
37 lines
1.0 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
from datetime import datetime, timedelta
|
|
import argparse
|
|
|
|
# Parse command line arguments
|
|
parser = argparse.ArgumentParser(description="Description")
|
|
|
|
# add arguments to the parser
|
|
parser.add_argument("-f", "--file")
|
|
parser.add_argument("mode",
|
|
help="display the square of a given number",
|
|
nargs='?', default="total",
|
|
choices=["total", "add"])
|
|
|
|
args = parser.parse_args()
|
|
|
|
filename = args.file if args.file else 'time.txt'
|
|
|
|
if args.mode == "total":
|
|
with open(filename, 'r') as time_file:
|
|
total_time = timedelta()
|
|
|
|
for line in time_file:
|
|
date_time_description = line.split(" ", 2)
|
|
|
|
hours, minutes = date_time_description[1].split(':', 1)
|
|
delta = timedelta(hours=int(hours), minutes=int(minutes))
|
|
|
|
total_time += delta
|
|
|
|
print('Total time: ', total_time)
|
|
|
|
elif args.mode == "add":
|
|
with open(filename, 'a') as time_file:
|
|
time_file.write("A new line")
|