怎么用python完成下面那个问题啊

编写函数,输入一个字符串,以如下格式存储为日期和时间(24小时制),“MM/DD/YYYY HR:MIN:SEC”,并输出如下内容:
DD/MM/YYYY
HR: MIN :SEC
MM/YYYY
时间是“AM”或“PM”
函数中需要进行验证。例如,如果用户输入“122/04/1990 13:12:12”,该字符串是无效的。考虑所有可能的错误输入,并编写代码进行处理。

望采纳

import time
from datetime import datetime
"""
测试数据
18/2/1999 1:1:1
10/2/1999 12:1:100
12/-12/1999 1:1:1
12/12/1999 1-1-1
"""
input_date = input("请输入正确的时间格式(MM/DD/YYYY HR:MIN:SEC):")
f = '%m/%d/%Y %H:%M:%S'
try:
    timestamp = datetime.strptime(input_date, f).timestamp()
    print(time.strftime("%d/%m/%Y", time.localtime(timestamp)))
    print(time.strftime("%H:%M:%S", time.localtime(timestamp)))
    print(time.strftime("%m/%Y", time.localtime(timestamp)))
    res = 'PM' if 12 < int(time.strftime("%H", time.localtime(timestamp))) < 24 else 'AM'
    print(res)
except Exception as e:
    print("格式输入错误或数字超出时间范围!",e)