我正在尝试使我的库之一与 Python 2.6 兼容。它使用了datetime.timedelta.total_seconds
在 2.7 中添加的方法,所以为了使它与 2.6 一起工作,我想像timedelta
这样修改它:
import datetime
if not hasattr(datetime.timedelta, 'total_seconds'):
class timedelta(datetime.timedelta):
def total_seconds(self):
return self.days * 86400.0 + self.seconds + self.microseconds * 1e-6
datetime.timedelta = timedelta
这在某些情况下确实有效,例如,如果我创建一个timedelta
变量,它确实有这个方法。但是,如果timedelta
通过减去两个datetime.datetime
值来生成新对象,则结果对象中缺少该方法。
出了什么问题,我该如何解决?