Python проверяет, указано ли время в формате HH:MMa или HH:MMp

Есть ли способ проверить, имеет ли время (представленное как строка) формат "ЧЧ: ММа" или "ЧЧ: ММп"?

Например, "12:30p", "11:30a" или "8:30p" может быть временем ввода (где a = am, p = pm).

Благодарность!

2 ответа

Решение
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
Другие вопросы по тегам