python datetime从现在起添加秒

时间:2014-04-26 09:12:46

标签: python datetime

我要做的是将3秒添加到now()

def now(dt): 
    import datetime
    ts = datetime.datetime.now()+datetime.timedelta(seconds=dt)
    st = datetime.datetime.fromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')
    return st

给了我st = datetime.datetime.fromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S') TypeError: a float is required

所以我float(ts)

def now(dt): 
    import datetime
    ts = datetime.datetime.now()+datetime.timedelta(seconds=dt)
    st = datetime.datetime.fromtimestamp(float(ts)).strftime('%Y-%m-%d %H:%M:%S')
    return st

回溯:

st = datetime.datetime.fromtimestamp(float(ts)).strftime('%Y-%m-%d %H:%M:%S') TypeError: float() argument must be a string or a number

1 个答案:

答案 0 :(得分:3)

tsdatetime.datetime object。此类对象采用strftime方法,因此您无需拨打fromtimestamp

import datetime as DT
def now(dt): 
    import datetime
    ts = DT.datetime.now()+DT.timedelta(seconds=dt)
    st = ts.strftime('%Y-%m-%d %H:%M:%S')
    return st

您看到的第一个错误是由于fromtimestamp期望浮点数作为输入。 ts不是浮动。

第二个错误是由float期待字符串或数字引起的。 ts既不是字符串也不是数字。