mon*_*top 3 python datetime sum list timedelta
我正在尝试使用以下内容对datetime.datetime对象列表求和:
from datetime import datetime, timedelta
d= [datetime.datetime(2013, 5, 1, 9, 31, 24), datetime.datetime(2013, 6, 11, 17, 22, 18), datetime.datetime(2013, 4, 3, 16, 6, 59)]
sum_d = sum(d, timedelta())
Run Code Online (Sandbox Code Playgroud)
我收到错误:
TypeError: unsupported operand type(s) for +: 'datetime.datetime' and 'datetime.datetime'
任何想法我做错了什么或如何总结这个列表?
我想得到我正在考虑的这个列表的平均值:
d_avg = sum(d, timedelta()) / len(d)
Run Code Online (Sandbox Code Playgroud)
谢谢!
Vee*_*rac 12
那只是因为你无法增加时间.您可以添加时间增量,但不能添加时间增量.
我的意思是,是3 次 1995年8月+ 19 个月454?这没有意义.您可以添加第0年的距离,但这与添加日期本身不同.
你希望从这个计算得到什么?
如果你希望找到平均值(为什么?),你将不得不使用较不直接的路线
import datetime
d = [datetime.datetime(2013, 5, 1, 9, 31, 24), datetime.datetime(2013, 6, 11, 17, 22, 18), datetime.datetime(2013, 4, 3, 16, 6, 59)]
d[0] + sum((d_i-d[0] for d_i in d), datetime.timedelta(0)) / len(d)
#>>> datetime.datetime(2013, 5, 5, 22, 20, 13, 666667)
Run Code Online (Sandbox Code Playgroud)
这个发现从偏移的总和d[0],是指那些,然后添加回到偏移.
| 归档时间: |
|
| 查看次数: |
16738 次 |
| 最近记录: |