25092
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer. Реклама: @anothertechrock РКН: https://rknn.link/car
Ответ к предыдущей задаче для новичков
# Функция для проверки числа на "уродливость"def isUgly(n):# Тесты для функции isUrgly()
if n <= 0:
return False
while n % 2 == 0:
n /= 2
while n % 3 == 0:
n /= 3
while n % 5 == 0:
n /= 5
return n == 1def test_is_ugly():
assert is_ugly(6) == True
assert is_ugly(1) == True
assert is_ugly(14) == False
assert is_ugly(0) == False
assert is_ugly(-6) == False
#задача #coding
Django. Аутентификация в Django-REST с помощью Auth.js
В этом уроке рассматривается реализация системы аутентификации на основе Django REST (с помощью Django REST Framework) и ее интеграция с Auth.js (ранее известным как NextAuth.js) во фронтенде. Мы разберем настройку аутентификации на основе учетных данных, а также аутентификацию с помощью Google.
#django
⁉️ Хотите стать востребованными разработчиком на Python с нуля, но не знаете, с чего начать обучение?
Приходите на открытый практический урок «Генераторы и очереди в Python» от OTUS. Спикер Дмитрий Панкрашов — ведущий разработчик в компании-партнере вендора СЭД «Директум».
На вебинаре мы:
- рассмотрим концепции генераторных функций и очередей;
- поговорим о сходствах, различиях и применимости в решении реальных задач;
- разберем несколько практических примеров;
- ответим на все возникающие вопросы.
📌Занятие подойдет начинающим разработчикам и тем, кто только готовится к обучению.
Встречаемся 13 мая в 20:00 мск в преддверии старта курса «Специализация Python Developer».
Все участники вебинара получат специальную цену на обучение и персональную консультацию от менеджеров OTUS!
➡️ Регистрируйтесь прямо сейчас, чтобы не пропустить бесплатный урок: https://vk.cc/cwDPIvРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Задача с кодом. Скользящие числа
Напишите функцию, принимающую число и проверяющую, является ли оно «скользящим». Скользящее число — такое число, соседние цифры которого отличаются между собой на единицу.
Примеры:
is_slidey(123454321) ➞ TrueОбратите внимание на примеры 4 и 5. Если в числе идут подряд одинаковые цифры или какая-то цифра в ряду пропущена, такое число мы не считаем скользящим.
is_slidey(54345) ➞ True
is_slidey(987654321) ➞ True
is_slidey(1123) ➞ False
is_slidey(1357) ➞ False
is_slidey(1) ➞ True
Знаем, что тут сидят серьезные программисты, но если вдруг кто-то интересуется Бизнес Анализом - милости просим.
Бизнес Аналитик IT - канал о жизненном цикле разработки ПО глазами бизнес аналитика.
На канале вы найдете:
- теоретический материал
- интересные статьи
- профессиональную литературу
- полезные шпаргалки
- вопросы с собеседований
- опросы.
Подпишись и пройди наш тест для начинающего бизнес аналитика.
Задача с кодом. Пишем функцию для «тупого добавления»
Условие: Создайте функцию, которая принимает два параметра. Если оба параметра — строки, то сложите их математически, если оба — integer, тогда сконкатенируйте их. Если параметры разного типа — верните None.
Примеры:
stupid_addition(1, 2) ➞ "12"Решение на нашем сайте.
stupid_addition("1", "2") ➞ 3
stupid_addition("1", 2) ➞ None
Tips & Tricks. Сколько времени занимает работа вашей функции?
При помощи модуля time можно узнать, сколько времени необходимо для выполнения кода. Пример - в заметке.
#tipsandtricks #модули
Ответ к предыдущей задаче для новичков
def findGreatestLetter(s):#задача #coding Читать полностью…
return max([letter.upper() for letter in set(s) if letter.islower() and letter.upper() in s], default="")
Топ. БНФ-нотация в документации Python
Читая документацию Python, вы могли встретить фрагменты БНФ-нотации (форма Бэкуса-Наура, англ. BNF Notation), которые выглядят примерно так:
name ::= lc_letter (lc_letter | "_")*
lc_letter ::= "a"..."z"
PythonBooksRu - канал для скачивания Python книг на русском языке.
Что в нашем канале:
1. Книги по питону, которые помогут вам пройти собеседование на позицию Python Developer.
2. Все книги на русском языке
3. Все книги можно скачать в 2 клика
4. Всё, никакой другой воды.
Подписывайтесь и качайте книги: @pythonknigiru
Задача с кодом. Число, которое больше A и делится на B
Напишите функцию, которая будет принимать два числа: a и b. Она должна возвращать следующее число, которое будет больше a и b и без остатка делиться на b.
Примечание: a всегда будет больше, чем b.
Примеры:
divisible_by_b(17, 8) ➞ 24Решение на нашем сайте.
divisible_by_b(98, 3) ➞ 99
divisible_by_b(14, 11) ➞ 22
Тест. Методы множеств
Умеете ли вы применять методы множеств в Python ? Пройдите тест из 10 вопросов и проверьте!
#тест
🔥 Приглашаем на бесплатный открытый урок!
Тема: Чистая архитектура в Python
🎙 На открытом уроке Станислав Ступников — руководитель отдела разработки в VK — расскажет о чистой архитектуре в Python.
Чистая архитектура — это концепция построения долгоживущих приложений, которые должны быть легко расширяемыми, тестируемыми и не зависящими от деталей реализации. На практическом занятии мы разберёмся, как применять эти принципы на примере условного Flask-приложения.
Когда: 24 апреля в 20:00 мск.
Где: онлайн.
Занятие пройдёт в рамках подготовки к старту курса «Python Developer. Professional».
Доступна рассрочка на обучение!
👉 Присоединяйтесь, чтобы узнать больше о чистой архитектуре и Python-разработке: https://otus.pw/mXQK/Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🚀 Python Митап: Django VS Litestar, Токены отмены, Liveconfigs и многое другое!
🔥 Темы и спикеры:
✔️ Django VS Litestar: кто круче? — Александр Гончаров, Reef Technologies
Рассмотрим относительно новый фреймворк Litestar и сравним его с гигантом Django, чтобы понять, что в новинке круто, а чего не хватает
✔️ Токены отмены: паттерн и тулинг — Евгений Блинов, VK
Узнайте о токенах отмены, элегантном способе описания ограничений в коде и их отмене извне для улучшения тестируемости и читаемости.
✔️ Управляем кодом из админки с помощью Liveconfigs — Денис Дудник, Factory5
Погрузитесь в мир кастомных настроек алгоритмов и бизнес-правил в Django-проектах. Узнайте о django-liveconfigs и его преимуществах перед классическими подходами.
✔️ Доверяй, но проверяй — Алексей Жиряков, KION
Данные основа современного мира, на них обучаются нейросети и другой МЛ, через их призму видят пользователя в продукте, принимают решения по внедрению и поддержке фич, выбирают направления развития.
Модератор Григорий Петров, Devrel Evrone
Эксперт Никита Соболев, независимый open-source разработчик
➖➖➖
🗓 24 апреля, начало в 19:00 мск, Среда
🌐 ОНЛАЙН
✅ Регистрация на мероприятие
⚡Очное обучение Python в НИУ ВШЭ
Освойте Python и научитесь применять его для анализа данных на курсе «Python для автоматизации и анализа данных» от Центра непрерывного образования ФКН НИУ ВШЭ. Подойдет как начинающим, так и тем, у кого уже есть опыт в программировании.
Обучение очное в кампусе НИУ ВШЭ в Москве.
Старт: 16 апреля.
Стоимость: 70 000₽. Оплату можно разделить на 2 части.
Полная программа и регистрация: по ссылке.
Реклама. НИУ ВШЭ.
ИНН 7714030726
Erid: 2SDnjek5B69
Задача для новичков
Уродливое число — это положительное целое число, простыми множителями которого могут быть только числа 2, 3 и 5.
Напишите функцию isUgly(n: int), которая принимает на вход целое число n и возвращает True, если число уродливое, и False в противном случае. Также напишите тесты для этой функции, чтобы убедиться, что она работает нормально.
Свои варианты пишите в комментариях! Решение - сегодня вечером.
#задача #coding
Задача на логику. Кто украл кошелек учительницы?
У учительницы пропал кошелек. Украсть его мог только кто-то из 5 учеников: Лилиан, Джуди, Дэвид, Тео или Маргарет. При опросе этих детей каждый из них дал по 3 показания:
Лилиан: 1) я не брала кошелек; 2) я никогда в своей жизни ничего не крала; 3) это сделал Тео.
Джуди: 4) я не брала кошелек; 5) мой папа достаточно богат, и у меня есть собственный кошелек; 6) Маргарет знает, кто это сделал.
Дэвид: 7) я не брал кошелек учительницы; 8) с Маргарет я не был знаком до поступления в школу; 9) это сделал Тео.
Тео: 10) я не виновен; 11) это сделала Маргарет; 12) Лилиан лжет, утверждая, что я украл кошелек.
Маргарет: 13) я не брала кошелек учительницы; 14) в этом виновна Джуди; 15) Дэвид может поручиться за меня, так как знает меня со дня рождения.
При дальнейшем расспрашивании каждый из учеников признал, что из сделанных им трех заявлений два верных и одно неверное.
Вопрос: кто украл кошелек учительницы?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
Tips & Tricks. Подсчет наиболее часто встречающихся элементов в итерируемом объекте
Показываем, как помощью инструмента Counter из модуля collections узнать, какие элементы итерируемого объекта встречаются чаще всего, и сколько раз.
#tipsandtricks #списки #строки #модули
Тест. Битовые операции Python
Хорошо ли вы понимаете битовые операции? Пройдите тест из 10 вопросов и проверьте!
#тест
Строки. Как напечатать табуляцию в Python
В этой статье мы рассмотрим, как напечатать табуляцию, т.е. вывести на экран табы (или пробелы) в виде отступов между частями строки.
#строки
Задача на логику. 99 мешков фальшивых монет
Есть 100 мешков с монетами. Известно, что в одном из них — настоящее золото, а в остальных — фальшивые монеты. На вид монеты совершенно одинаковы (на вкус и запах — тоже).
Также известно, что любая фальшивая монета весит ровно 1 унцию, а любая настоящая — 1,01 унции.
У вас есть весы (точные, показывающие вес). На них можно взвесить хоть все 100 мешков с монетами одновременно. Но вам доступно только одно взвешивание.
Как определить, в каком мешке золото?
Подсказка: мешки можно помечать, а также брать из них любое количество монет.
Решение тут.
#логическаязадача
Задача с кодом. Множитель списков
Напишите функцию, которая будет принимать список (чисел или строк) и возвращать новый список со вложенными списками для каждого элемента исходного списка.
Каждый вложенный список будет заполняться соответствующим элементом исходного списка. Количество элементов во вложенном списке должно быть таким же, как в исходном.
Примеры:
multiply([4, 5])Решение на нашем сайте.
➞ [[4, 4], [5, 5]]
multiply(["*", "%", "$"])
➞ [["*", "*", "*"], ["%", "%", "%"], ["$", "$", "$"]]
multiply(["A", "B", "C", "D", "E"])
➞ [["A", "A", "A", "A", "A"], ["B", "B", "B", "B", "B"], ["C", "C", "C", "C", "C"], ["D", "D", "D", "D", "D"], ["E", "E", "E", "E", "E"]]
Задача для новичков
Напишите функцию findGreatestLetter(), которая получает на вход строку, состаящую из английских букв. Эта функция должна вывести букву, которая встречается в строке как в верхнем, так и в нижнем регистре. (Вывести ее нужно в верхнем).
Если таких букв несколько, то надо вывести ту, которая больше в лексикографическом смысле (b > a например). Если такой буквы нет, то следует вывести пустую строку.
Примеры работы данной функции:findGreatestLetter("arRAzFif") --> 'R'Свои варианты пишите в комментариях! Решение - сегодня вечером.
findGreatestLetter("AbCdEfGhIjK") --> ''
#задача #coding
Задача на логику. Сколько задач в таск-трекере?
В таск-трекере есть некоторое количество задач. Если разбросать их все на 4 разработчиков, то останется еще 3 таски. Если делить на троих или на пятерых — останется 2 таски.
Сколько всего задач в трекере?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
Tips & Tricks. 5 интересных вариантов использования метаклассов в Python
Умение использовать метаклассы многими воспринимается как наличие черного пояса Python. Эта статья покажет вам 5 практических способов применения метаклассов.
#tipsandtricks
🐍 Приглашаем вас на бесплатный открытый урок курса «Python Developer»!
Тема: «Параллельное программирование в Python».
Дата и время: 22 апреля, 20:00 (МСК).
Спикер: Дмитрий Панкрашов, Middle Python Developer в крупной российской BigTech-компании.
На занятии мы обсудим средства для распараллеливания программ на Python: процессы, потоки, asyncio. Поговорим о том, какие именно средства лучше подходят для решения конкретных задач. Обсудим наиболее сложные моменты в параллельном программировании.
Вебинар подойдёт начинающим разработчикам, желающим получить представление об основах параллельного программирования в Python.
Доступна рассрочка на обучение!
Будем рады видеть вас на вебинаре курса «Python Developer»!
👉 Регистрация на урок по ссылке: https://vk.cc/cwl9cPРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Топ. Ответ «да/нет» в пользовательском вводе в Python
При написании интерактивных скриптов на Python часто возникает необходимость спросить у пользователя, хочет ли он продолжать или согласен ли он с условиями. То есть нам нужно задать вопрос, предполагающий ответ типа «да/нет», и обработать пользовательский ввод. Давайте посмотрим, как это делается.
#топ
Задача на логику. Недоверчивый рабочий и золотая монета
У одного фермера возникла необходимость выкопать новый колодец. Он решил нанять специалиста. Спец по колодцам сказал, что всего на работу уйдет 7 дней, а начать он может в понедельник. Но в связи с галопирующей инфляцией в стране им никак не удавалось договориться о цене работ.
У фермера была золотая монета царских времен, доставшаяся от прадеда, и он предложил оплатить всю работу этой монетой. Спец по колодцам был недоверчивый и захотел получать плату ежедневно. Он также был не шибко умный и потому предложил распилить монетку на 7 равных частей (что лишало его шанса продать монету нумизматам). Фермер прикинул, что если имеющимся инструментом пилить на 7 частей, то от монеты ничего не останется. Но два разреза сделать все же можно.
Как разделить монету двумя разрезами, чтобы иметь возможность платить за работу ежедневно?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
Тест. Строки и методы строк Python
Разработчикам часто приходится работать со строками. Для этой цели в Python даже есть встроенные методы строк. Хороший программист определенно должен их знать. А как у вас со знанием строковых методов и вообще с умением работать со строками? Пройдите тест из 10 вопросов и проверьте!
#тест
Ответ к предыдущей задаче для новичков
def smallestMultiple(n):#задача #coding Читать полностью…
return n if n % 2 == 0 else 2 * n