Девман для питонистов
532 subscribers
144 photos
3 videos
186 links
Веб-разработка на Python. Канал от практиков.

Сайт школы Девман: https://dvmn.org/
Контакт для связи: @yulya_devman
Download Telegram
☑️ Возвращаемся к вам с нашим вариантом решения:

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

➡️ Будете там же? Отмечайтесь в комментариях и увидимся на форуме!
🔥3
Каждый разработчик-бэкендер на Python умеет и регулярно пользуется Git-ом. В консоли, в десктопном клиенте или встроенным в IDE интерфейсе. Git позволяет управлять исходным кодом:
➡️ не перетирать изменения других разработчиков,
➡️ иметь несколько версий кода, смотреть предыдущие версии,
➡️ служит дополнительной документацией и помогает делиться кодом.

Об умении работать с Git спрашивают почти на каждом собеседовании на вакансию разработчика.

Но для новичка с ходу разобраться с инструментом — боль и слезы. Давайте разберемся в основных понятиях. .

👉 Изучить работу с Git и Github можно в нашем мини-курсе
🔥51👍1
Для работы с Git можно использовать как интерфейс командной строки, так и встроенные в IDE и самостоятельные графические приложения.

Консольный Git незаменим на сервере, но в локальной разработке сложные операции такие как слияния веток кода удобнее проводить в графическом интерфейсе.

👉 Для освоения навыков работы с Git читайте официальный гайд и закрепите полученные знания на практике в мини-курсе «Git и GitHub».
👍2
В предыдущих постах мы уже рассказали про систему контроля версий Git, графические клиенты.

➡️Одна из ключевых особенностей Git — это распределенная система. Код хранится на локальной машине разработчика, на сервере где работает сайт и еще в каком-то удаленном централизованном хранилище, например, в рамках компании.

К централизованному хранилищу предъявляют требования по доступности и надежности.

В качестве удаленного хранилища репозиториев может использоваться как веб-сервис, так и развернутая на своих серверах система. Познакомимся с самыми популярными платформами.

☑️В уроках Девман учебные проекты обязательно оформляют в публичные репозитории на GitHub. Каждый учебный проект проверяется опытным разработчиком и затем дорабатывается, и по итогам обучения наши ученики получают достойное портфолио проектов с чистым кодом.

GitHub наверняка пользовался каждый начинающий разработчик.
Внутри Девмана используем GitLab, развернутый на нашем сервере.
В РФ сейчас активно разрабатывают платформу GitVerse.
🔥31