Обработка пользовательского ввода на Python
Здравствуйте. В сегодняшней статье мы рассмотрим один простой пример обработки пользовательского
ввода на Python. Также используем модуль operator из стандартной библиотеки.
Описание программы:
Программа на ввод получает последовательность цифр, введенных через пробелы, в виде одной
строки. Далее идет проверка порядка последовательности введенных чисел. Если числа расположены
в порядке убывания, то программа выведет ответ. Также в программе присутствует проверка
на допустимый диапазон.
Итак создадим файл program.py.
Импортируем в него модуль operator, который содержит в себе функции, аналоги операторов типа плюс,
минус и т.д.
import operator
# функция для проверки последовательности
def is_descend(x):
return all(map(operator.gt, x, x[1:]))
# стандартный поток ввода
str = input("Введите числа в виде единственной строки через пробел:")
# разделение строки по пробельным символам
lst = str.split()
# создаем пустой список
num_lst = []
# проверка вводимых символов на принадлежность к цифрам и на соответствие диапазону
for word in lst:
if word.isnumeric():
if int(word) in range(-1, 301):
num_lst.append(int(word))
else:
print("Число вне диапазона")
# функция реализующая ответ для пользователя
def chek_descend():
if is_descend(num_lst) == True:
print("NO")
else:
print("YES")
# запуск функции
chek_descend()
Таким образом, наша программа проверяет последовательность на соответствие порядку. И все
это при помощи Python и его стандартных средств.