我在 python 中编写了一个函数,它接受时间戳并返回相对于当前时区的时间戳。

代码

def datetime_from_utc_to_local(utc_datetime):
    now_timestamp = time.time()
    offset = datetime.fromtimestamp(now_timestamp) - datetime.utcfromtimestamp(now_timestamp)
    return utc_datetime + offset

错误:
unsupported operand type(s) for +: 'int' and 'datetime.timedelta'

你能帮我解决这个错误吗?

我希望这个函数返回时间戳

最佳答案

offset 是一个 datetime.timedelta object 。如果您只需要几秒钟,请使用 timedelta.total_seconds() 提取它们:

return utc_datetime + offset.total_seconds()

但是,您的函数签名表明它希望您为它提供 datetime.datetime() 对象,在这种情况下,您不应更改此函数,而应更改调用它的代码。显然你给它一个整数。

10-08 05:38
查看更多