日期时间指令真的有必要这么久吗?

时间:2018-04-19 03:53:37

标签: python-2.7 datetime

我继承了包含以下内容的python代码:

import time
import datetime

stamp = datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S.%f')
stamp = stamp[0:19]       #trim to seconds
print "\n%s\n" %stamp

对于返回当前日期和时间,第三条指令行似乎异常冗长且冗长:

2018-04-18 23:18:02

虽然它有效但是有没有更短的指令来执行任务?

1 个答案:

答案 0 :(得分:3)

<强>更新

有这个:

# while more concise now you have to deal with time zones
stamp = str(datetime.utcnow())[0:19]

否则:

您可以准确导入所需的内容,以消除部分冗余。

from time import time
from datetime import datetime

您也可以定义FORMAT来缩短它。它的另一个好处是略微更明确。如果你是那种东西。您可能会发现原始版本更明确。它可以采取任何一种方式。

FORMAT = '%Y-%m-%d %H:%M:%S.%f'
stamp = datetime.fromtimestamp(time()).strftime(FORMAT)[0:19]

你可能会问是否有一些你可以做的事情:

stamp = datetime_timestamp(FORMAT)

你可以滚动这样的东西:

def datetime_timestamp(format):
     return datetime.fromtimestamp(time()).strftime(format)[0:19]

然后你可以打电话给:

stamp = datetime_timestamp(FORMAT)

不确定是否有更优雅的方式来做到这一点。如果没有那么你就是这个的老板。