mirror of
https://github.com/ada-dmitry/lab6.git
synced 2026-09-24 09:20:15 +00:00
add nekit project
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
import re
|
||||
|
||||
def validate_time_format(input_str):
|
||||
"""Функция проверки подходящего формата для ввода времени в interval
|
||||
|
||||
Args:
|
||||
input_str (str): входная строка для проверки
|
||||
|
||||
Returns:
|
||||
bool: Булевое значение, которое характеризует валидность вводимых строк
|
||||
"""
|
||||
# Регулярное выражение для проверки формата
|
||||
pattern = r'^(\d?+\s*hours?\s*)?(\d+\s*minutes?)$'
|
||||
|
||||
# Проверка соответствия регулярному выражению
|
||||
match = re.match(pattern, input_str)
|
||||
|
||||
if match:
|
||||
return True
|
||||
|
||||
# Если формат некорректный, возвращаем False
|
||||
return False
|
||||
|
||||
def validate_input(prompt, min_value, max_value):
|
||||
"""Проверка ввода для выбора номера строки
|
||||
|
||||
Args:
|
||||
prompt (string): "Промт" или запрос пользователю
|
||||
min_value (int): Нижняя граница, по умолчанию 0
|
||||
max_value (int): Верхняя граница
|
||||
|
||||
Returns:
|
||||
int: Либо число, введенное пользователем, либо -1 для выхода
|
||||
"""
|
||||
while True:
|
||||
user_input = input(prompt)
|
||||
try:
|
||||
value = int(user_input)
|
||||
if min_value <= value <= max_value and value != 0:
|
||||
return value
|
||||
elif value == 0:
|
||||
return -1
|
||||
else:
|
||||
print(f"Введенное значение должно быть в диапазоне от {min_value} до {max_value}")
|
||||
except ValueError:
|
||||
print("Введенное значение должно быть числом.")
|
||||
|
||||
|
||||
# test1 = 'erhwogngonwro'
|
||||
# test2 = '1 minute'
|
||||
# test3 = '2 hours 3 minutes'
|
||||
|
||||
# print(validate_time_format(test1), validate_time_format(test2), validate_time_format(test3))
|
||||
Reference in New Issue
Block a user