将 "datetime.date(2019, 3, 21)" 转换为“2019/03/21”
Convert "datetime.date(2019, 3, 21)" to "2019/03/21"
我有一个列表列表,如下所示:
[['2019-001', datetime.date(2019, 3, 21), 'Services']]
我希望结果如下所示:
[['2019-001', '2019/03/21', 'Services']]
我需要遍历整个列表列表,因为我不知道所有这些日期时间条目的位置。我应该使用正则表达式,还是有 better/faster/more Pythonic 的方式来做到这一点?
也许像下面这样,使用 list-comp 和 isinstance()
?如果您不知道列表中的哪个元素将成为 datetime
对象,我们能做的最好的事情就是检查每个元素。
>>> l = [['2019-001', datetime.date(2019, 3, 21), 'Services']]
>>> [[x.strftime('%Y/%m/%d') if isinstance(x, datetime.date) else x for x in sl] for sl in l]
[['2019-001', '2019/03/21', 'Services']]
我有一个列表列表,如下所示:
[['2019-001', datetime.date(2019, 3, 21), 'Services']]
我希望结果如下所示:
[['2019-001', '2019/03/21', 'Services']]
我需要遍历整个列表列表,因为我不知道所有这些日期时间条目的位置。我应该使用正则表达式,还是有 better/faster/more Pythonic 的方式来做到这一点?
也许像下面这样,使用 list-comp 和 isinstance()
?如果您不知道列表中的哪个元素将成为 datetime
对象,我们能做的最好的事情就是检查每个元素。
>>> l = [['2019-001', datetime.date(2019, 3, 21), 'Services']]
>>> [[x.strftime('%Y/%m/%d') if isinstance(x, datetime.date) else x for x in sl] for sl in l]
[['2019-001', '2019/03/21', 'Services']]