проверка формата времени Python

Расширенные алгоритмы хеширования довольно интересны. Линейное хеширование аккуратно, потому что оно позволяет разделять один "блок" в Вашей хеш-таблице за один раз, вместо того, чтобы перехешировать всю таблицу. Это особенно полезно для распределенных кэшей. Однако с самыми простыми политиками разделения, Вы заканчиваете тем, что разделили все блоки в быстрой последовательности, и коэффициент загрузки таблицы колеблется довольно плохо.

я думаю, что спираль, хеширующая , действительно аккуратна также. Как линейное хеширование, за один раз разделяется один блок, и немного меньше чем половина записей в блоке помещается в тот же новый блок. Это очень чисто и быстро. Однако это может быть неэффективно, если каждый "блок" размещается машиной с подобными спецификациями. Для использования аппаратных средств полностью Вы хотите соединение менее - и более - мощные машины.

7
задан Alan Moore 24 August 2009 в 13:45
поделиться

4 ответа

Вы можете добиться этого без регулярных выражений:

import time

def isTimeFormat(input):
    try:
        time.strptime(input, '%H:%M')
        return True
    except ValueError:
        return False

>>>isTimeFormat('12:12')
True

>>>isTimeFormat('012:12')
False
23
ответ дан 6 December 2019 в 05:55
поделиться
import re

time_re = re.compile(r'^(([01]\d|2[0-3]):([0-5]\d)|24:00)$')
def is_time_format(s):
    return bool(time_re.match(s))

Соответствует всему, начиная с 00:00 до 24:00.

3
ответ дан 6 December 2019 в 05:55
поделиться

Этот шаблон должен помочь вам:

http://regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5

3
ответ дан 6 December 2019 в 05:55
поделиться

Это даст вам объект regexp, который его проверит. Однако в зависимости от того, кого вы спрашиваете, 24:00 может быть неподходящим временем (это 00:00). Но я думаю, это легко изменить в соответствии с вашими потребностями.

import re
regexp = re.compile("(24:00|2[0-3]:[0-5][0-9]|[0-1][0-9]:[0-5][0-9])")
2
ответ дан 6 December 2019 в 05:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: