0

我需要将timedelta值保存到浮点类型字段中。

这是我的代码:

if self.end_time and self.start_time:
        timediff =self.end_time - self.start_time // Here i get a time.delta value
        self.duration = // here i get an error

TypeError: float() argument must be a string or a number, not
'datetime.timedelta'

我该如何解决这个问题?

4

1 回答 1

0

您问题中的代码不完整,但假设您实际上正在执行以下操作:

self.duration = float(timediff)

...而您想要的是表示为浮点数的总秒数timediff,您可以使用以下timedelta.total_seconds()方法获得:

self.duration = timediff.total_seconds()

这将返回一个浮点数,因此不需要转换。

于 2019-02-26T14:00:12.613 回答