☑️ Возвращаемся к вам с нашим вариантом решения:
Это не единственная возможная реализация решения.
В данном решении учтены следующие детали:
✅не забыли вычистить строку и преобразовать регистр букв к единому нижнему
✅воспользовались встроенными возможностями для инвертирования строки
✅использовали list_comprehension для простого цикла, чтобы упростить код
✅код отформатирован согласно PEP8
✅переменным и функции даны понятные названия
✅не забыли про корнер-кейсы — когда после удаления лишних символов остается пустая строка или всего один символ, который не является палиндромом
✅добавлены простые автотесты
У @LuSP7 получился отличный вариант, близкий к нашему. Вынос чистки от лишних символов в отдельную функцию приветствуем и оставляем обоим вариантам право на существование. Спасибо всем, кто поделился идеями здесь и в ВК!
На курсе «Профессия Middle Python/Django разработчик» мы готовим к прохождению технического интервью и разбираем похожие задачки.
➡️ Был опыт live coding на технических интервью? Делитесь своим опытом в комментариях!
def is_palindrome(input_line: str) -> bool:
cleared_line = ''.join([symbol for symbol in input_line.lower() if symbol.isalpha()])
return len(cleared_line) > 1 and cleared_line == cleared_line[::-1]
test_palindromes = [
'Шалаш',
'А роза упала на лапу Азора',
'И темен город. Мороз, узором дорог не мети.',
'Кинь лед зебре, бобер - бездельник!',
]
test_not_palindromes = [
'Шалаши',
'12f21',
'Кинь лед зебре, бобер - крутой зверь!',
]
for palindrome in test_palindromes:
assert is_palindrome(palindrome)
for not_palindrome in test_not_palindromes:
assert not is_palindrome(not_palindrome)
Это не единственная возможная реализация решения.
В данном решении учтены следующие детали:
✅не забыли вычистить строку и преобразовать регистр букв к единому нижнему
✅воспользовались встроенными возможностями для инвертирования строки
✅использовали list_comprehension для простого цикла, чтобы упростить код
✅код отформатирован согласно PEP8
✅переменным и функции даны понятные названия
✅не забыли про корнер-кейсы — когда после удаления лишних символов остается пустая строка или всего один символ, который не является палиндромом
✅добавлены простые автотесты
assert как для палиндромов, так и для строк, которые не являются палиндромамиУ @LuSP7 получился отличный вариант, близкий к нашему. Вынос чистки от лишних символов в отдельную функцию приветствуем и оставляем обоим вариантам право на существование. Спасибо всем, кто поделился идеями здесь и в ВК!
На курсе «Профессия Middle Python/Django разработчик» мы готовим к прохождению технического интервью и разбираем похожие задачки.
➡️ Был опыт live coding на технических интервью? Делитесь своим опытом в комментариях!
👍1
⚡️ 17-19 октября примем участие в форуме Innovation week и расскажем о том, как сделать свою рабочую систему контрактов и не сойти с ума 🔥
От нас выступают спикерами Евгений Евсеев — основатель и технический директор Devman и Артем Каменев — операционный директор подразделения заказной разработки PelidTeam
🔄 На форуме будем обсуждать самые актуальные вопросы, связанные с технологиями в бизнесе, трансформациями бизнес-моделей, прогнозами и трендами.
🔣Дата мероприятия: 17-19 октября.
🔣Место: Москва, ВЭБ центр. Новинский бульвар д.31
➡️ Будете там же? Отмечайтесь в комментариях и увидимся на форуме!
От нас выступают спикерами Евгений Евсеев — основатель и технический директор Devman и Артем Каменев — операционный директор подразделения заказной разработки PelidTeam
🔄 На форуме будем обсуждать самые актуальные вопросы, связанные с технологиями в бизнесе, трансформациями бизнес-моделей, прогнозами и трендами.
🔣Дата мероприятия: 17-19 октября.
🔣Место: Москва, ВЭБ центр. Новинский бульвар д.31
➡️ Будете там же? Отмечайтесь в комментариях и увидимся на форуме!
🔥3
Каждый разработчик-бэкендер на Python умеет и регулярно пользуется Git-ом. В консоли, в десктопном клиенте или встроенным в IDE интерфейсе. Git позволяет управлять исходным кодом:
➡️ не перетирать изменения других разработчиков,
➡️ иметь несколько версий кода, смотреть предыдущие версии,
➡️ служит дополнительной документацией и помогает делиться кодом.
Об умении работать с Git спрашивают почти на каждом собеседовании на вакансию разработчика.
Но для новичка с ходу разобраться с инструментом — боль и слезы. Давайте разберемся в основных понятиях. .
👉 Изучить работу с Git и Github можно в нашем мини-курсе
➡️ не перетирать изменения других разработчиков,
➡️ иметь несколько версий кода, смотреть предыдущие версии,
➡️ служит дополнительной документацией и помогает делиться кодом.
Об умении работать с Git спрашивают почти на каждом собеседовании на вакансию разработчика.
Но для новичка с ходу разобраться с инструментом — боль и слезы. Давайте разберемся в основных понятиях. .
👉 Изучить работу с Git и Github можно в нашем мини-курсе
🔥5❤1👍1
Для работы с Git можно использовать как интерфейс командной строки, так и встроенные в IDE и самостоятельные графические приложения.
Консольный Git незаменим на сервере, но в локальной разработке сложные операции такие как слияния веток кода удобнее проводить в графическом интерфейсе.
👉 Для освоения навыков работы с Git читайте официальный гайд и закрепите полученные знания на практике в мини-курсе «Git и GitHub».
Консольный Git незаменим на сервере, но в локальной разработке сложные операции такие как слияния веток кода удобнее проводить в графическом интерфейсе.
👉 Для освоения навыков работы с Git читайте официальный гайд и закрепите полученные знания на практике в мини-курсе «Git и GitHub».
👍2
В предыдущих постах мы уже рассказали про систему контроля версий Git, графические клиенты.
➡️Одна из ключевых особенностей Git — это распределенная система. Код хранится на локальной машине разработчика, на сервере где работает сайт и еще в каком-то удаленном централизованном хранилище, например, в рамках компании.
К централизованному хранилищу предъявляют требования по доступности и надежности.
В качестве удаленного хранилища репозиториев может использоваться как веб-сервис, так и развернутая на своих серверах система. Познакомимся с самыми популярными платформами.
☑️В уроках Девман учебные проекты обязательно оформляют в публичные репозитории на GitHub. Каждый учебный проект проверяется опытным разработчиком и затем дорабатывается, и по итогам обучения наши ученики получают достойное портфолио проектов с чистым кодом.
GitHub наверняка пользовался каждый начинающий разработчик.
Внутри Девмана используем GitLab, развернутый на нашем сервере.
В РФ сейчас активно разрабатывают платформу GitVerse.
➡️Одна из ключевых особенностей Git — это распределенная система. Код хранится на локальной машине разработчика, на сервере где работает сайт и еще в каком-то удаленном централизованном хранилище, например, в рамках компании.
К централизованному хранилищу предъявляют требования по доступности и надежности.
В качестве удаленного хранилища репозиториев может использоваться как веб-сервис, так и развернутая на своих серверах система. Познакомимся с самыми популярными платформами.
☑️В уроках Девман учебные проекты обязательно оформляют в публичные репозитории на GitHub. Каждый учебный проект проверяется опытным разработчиком и затем дорабатывается, и по итогам обучения наши ученики получают достойное портфолио проектов с чистым кодом.
GitHub наверняка пользовался каждый начинающий разработчик.
Внутри Девмана используем GitLab, развернутый на нашем сервере.
В РФ сейчас активно разрабатывают платформу GitVerse.
🔥3❤1