我希望以某种格式获取当前日期时间。还有什么比这短。
>>> import datetime
>>> datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
'2013-03-28 08:29:41'
答案 0 :(得分:6)
不,没有。但是您不必总是重复整个调用。例如:
>>> import datetime
>>> now = datetime.datetime.now
>>> now().strftime('%Y-%m-%d %H:%M:%S')
'2013-03-28 08:29:41'
如果你总是想要相同的格式,你也可以把它包起来:
import datetime
def now_string():
return datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
答案 1 :(得分:4)
将它放在某个地方的某个功能
import datetime
def my_now():
return datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
您可以使用一些可选参数使其更灵活
import datetime
def my_now(the_time=None, fmt='%Y-%m-%d %H:%M:%S'):
if the_time is None:
the_time = datetime.datetime.now()
return the_time.strftime(fmt)
答案 2 :(得分:2)
如果这就是你想要的一切,那就这样吧。但请不要责怪我这样一个hackish代码: - )
>>> import datetime
>>> str(datetime.datetime.now())[:19]
'2013-03-28 15:57:31'
字符32: - )
答案 3 :(得分:0)
由于您的格式字符串接近默认格式,您只需要摆脱微秒:
import datetime
str(datetime.datetime.now().replace(microsecond = 0))