Методы строк lower() и upper() в языке программирования Python
Продолжаем знакомиться с методами, которые применимы к коллекциям типа str языка программирования Python.
Сегодня разберем два парных метода, которые имеют одинаковый принцип действия, но используются для достижения противоположных результатов.
Изображение Ulrike Mai с сайта Pixabay
Те, кто знаком с английским языком, уже могли догадаться, что lower() возвращает строку, преобразовав все символы изначальной строки в нижний регистр.
Метод upper(), наоборот, вернет строк, состоящую только из символов верхнего регистра.
Конечно методы никак не воздействуют на цифры, знаки препинания и прочие не буквенные символы, которые так же могут содержаться в строке.
Для закрепления понимания разберем решение простой задачи, которое удобно осуществить при помощи одного из этих методов:
Изображение автора
Как можете видеть, решение не сложное. Мы изначально присвоили переменной right_answer значение правильного ответа 'шкаф продан', а затем просто сравниваем его с ответом на вопрос, который вводит пользователь.
Но вот незадача! Если пользователь начинает писать свой ответ с заглавной буквы, то программа справедливо считает его не верным.
Конечно, нам не нужно, чтобы "чужаки" случайно угадали ответ, но и "своим" лишний раз усложнять жизнь не стоит.
Нужно найти решение этого вопроса, и, желательно, без обращения к пользователю в input(): "пожалуйста вводите ответ в нижнем регистре".
Первым на ум может прийти вариант со множественным сравнением.
Что-то вроде:
if user_answer == 'шкаф продан' or user_answer == 'Шкаф продан' or user_answer == 'ШКАФ ПРОДАН'.
Однако, согласитесь, уж очень странно проводить разные сравнения для одинакового текста.
Именно тут нам придут на помощь описанные выше функции.
Так как правильный ответ записан в нижнем регистре, будем использовать lower():
Изображение автора
Как видите, даже если пользователь случайно не отожмет CapsLock, условие всё равно выполнится, так как lower() преобразует все символы в нижний регистр.
(Изображение для мобильной версии Iris с сайта Pixabay)
Мы используем cookie-файлы, чтобы улучшить сервисы для вас. Если ваш возраст менее 13 лет, настроить cookie-файлы должен ваш законный представитель. Больше информации
Нет комментариев