Уровень/10
Средняя буква
- Напишите функцию с именем MID, которая принимает строку в качестве параметра.
- Ваша функция должна извлечь и вернуть среднюю букву.
- Если средней буквы нет, ваша функция должна вернуть пустую строку.
- Например, Mid («ABC») должен вернуть «B», а Mid («AAAA») должен вернуться ».
Намекать
- Сначала проверьте, является ли длина строки ровно, и если да, верните “”.
- Вы можете использовать оператор % (Modulo) для проверки.
- Ровная длина строки модуля 2 составляет 0, в то время как модуль длины нечетной строки 2 составляет 1.
- Вы можете Google «Проверка питона, если номер ровный или нечетный» для разъяснения.
- Кроме того, обратите внимание, что в Python индекс должен быть целым числом, а не номером с плавающей запятой. Таким образом, 2 является действительным индексом, но 2,0 нет.
- Поэтому используйте целочисленное разделение//для расчета индекса или отбрасывайте поплавок в целое число с int ().
Мое решение
def mid(my_string): length = len(my_string) % 2 if length == 0: return "" elif length != 0: middle = len(my_string) // 2 return my_string[middle] print(mid("cars"))
Другое решение
- Этот подход использует//, которое является целочисленным делением в Python 3
- В качестве альтернативы, используйте/и int () в комбинации.
def middel(string): if len(string) % 2 == 0: return "" return string[len(string)//2] print(middel("abc"))
Добавьте свое решение в комментарий:)
Оригинал: “https://dev.to/mahmoudessam/python-challenges2-36j5”