如何从不同的时间戳格式动态提取日期?



我有以下时间戳作为事件接收到lambda函数,我需要从时间戳

提取日期
import datetime as dt
case1_time=2021-06-23T00:05:05-04:00
case2_time=2021-08-03T04:57:52.30-04:00
def get_date_from_ts(timestamp):
extracted_date=dt.datetime.fromisoformat(timestamp)
#case 1
print(get_date_from_ts(case1_time))
## This will extract the date as = 2021-06-23
#case2
print(get_date_from_ts(case2_time))
ValueError: Invalid isoformat string 
顺便说一下,我需要处理这两种情况。谁能帮助如何解决这个格式问题?

您可以以以下内容为例:

输入:

from datetime import datetime
today_date = datetime.now().strftime("%d/%m/%Y")
print(today_date)

输出:

19/08/2021

尝试转换"case1_time= 20121-06-23t00:05:05-04:00">

简单地从时间戳中提取日期部分如何?

def get_date_from_ts(timestamp):
extracted_date=dt.datetime.fromisoformat(timestamp[:10])
return extracted_date
Output
2021-06-23 00:00:00
2021-08-03 00:00:00

有一个最简单的方法,就是在某一点上分裂

#Convert to string
string_date_time=str(case1_time)
#split at specific location - T00:05:05-04:00
string_date_time.split('T')[0]
#output:
2021-06-23

最新更新