0

I have a list of datetime.time objects and I am trying to find the average time of the list.

ex: [datetime.time(0,0,0,678000),datetime.time(0, 2, 0, 678000), datetime.time(1, 0, 0, 678000), datetime.time(0, 0, 0, 678000), datetime.time(0, 10, 0, 678000), datetime.time(0, 2, 0, 678000]

A way that would work is to convert each time object to a str and then splitting along the ':' but there must be a better way to do this.

Max Lyman
  • 13
  • 6

1 Answers1

0
from datetime import datetime, date, timedelta 
list.append(datetime.combine(date.min, datetime.strptime(df[i][0], '%H:%M:%S').time())- datetime.min) # i am reading from a csv inorder to get the times

used datetime.combine to convert the datetime.time objects in to datetime.timedelta objects

once in a timedelta object I could use sum() on the list

sum(list, timedelta(0,0,0,0)) # you can also find the average sum(list, timedelta(0,0,0,0))/len(list)
Max Lyman
  • 13
  • 6