2.10.2 格式化日期字符串

人类对日期的表达方式多种多样,不仅需要让程序理解输入的各种格式的日期,还需要让程序输出指定的各种格式的日期数据。

英国当地时间2018年3月14日凌晨3点46分,著名的物理学家霍金去世,世界失去了一位传奇人物,日期和时间代码如下:


>>> passed_away_at = datetime(year=2018, month=3, day=14, hour=3, minute=46)
>>> passed_away_at
datetime.datetime(2018, 3, 14, 3, 46)

利用时间标识符,我们可以用strftime方法把时间和日期对象按照我们想要的格式导出为如下的字符串。

输出成“2018/3/14”。


>>> passed_away_at.strftime("%Y/%m/%d")
'2018/3/14'

输出成“2018_03_14,3:46”。


>>> passed_away_at.strftime("%Y_%m_%d, %H:%M")
'2018_03_14, 03:46'

输出成“March 14 2018,Wednesday”。


>>> passed_away_at.strftime("%B %m %Y, %A")
'March 03 2018, Wednesday'

当前时间的完整时间戳。


>>> datetime.now().strftime("%Y%m%d%H%M%S%f")
''20200602074420535129''
>>> datetime.now().strftime("%Y%m%d%H%M%S%f")
'20200602074447271014'

日期格式的需求很烦琐,但这是现实需求,在实际编程中会频繁出现,我们需要花精力去学习和掌握。