Python 检查时间格式是否为 HH:MMa 或 HH:MMp

Python check if time is in the format HH:MMa or HH:MMp

有没有办法检查时间(表示为字符串)的格式是 'HH:MMa' 还是 'HH:MMp'?

例如,“12:30p”、“11:30a”或“8:30p”可以是输入时间(其中 a = am,p = pm)。

谢谢!

timestring = "11:30a"
import re
pattern = re.compile("^(1[012]|[1-9]):[0-5][0-9][ap]$")
pattern.match(timestring)

你也链接了我的代码的修改版本

import time

def isTimeFormat(input):
    try:
        if input[-1] == 'a' or input[-1] == 'p':
            time.strptime(input[:-1], '%H:%M')
            return True
        else:
            return False
    except ValueError:
        return False