Pythonist.ru - образование по питону
25.2K subscribers
109 photos
2 videos
943 links
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer.
Реклама: @anothertechrock

Контент канала:
1. Разбор вопросов с собеседований
2. Книги
3. Задачи на логику
4. Проект Эйлера
5. Видео
6. Тесты по Python 3

@aldrson
Download Telegram
@pythonknigiru - тут можете скачать книги на русском языке.
Функции. Рекурсивный метод нахождения чисел Фибоначчи

Пишем программу, принимающую число членов последовательности Фибоначчи и при помощи рекурсии вычисляющую все числа, входящие в эту последовательность.

#функции #рекурсия
Задача с кодом. Расстояние между точками

Напишите функцию, которая будет принимать координаты двух точек (в двумерной декартовой системе координат) и возвращать расстояние между этими точками.

Координаты будут передаваться в функцию в виде строки из четырех чисел через запятую:

"x1,y1,x2,y2", где x1,y1 — координаты первой точки, а x2,y2 — координаты второй.

Примечание: если расстояние окажется числом с плавающей запятой, его нужно округлить до сотых (например, 2.34).

Примеры:
shortestDistance("1,1,2,1") ➞ 1
shortestDistance("1,1,3,1") ➞ 2
shortestDistance("-5,1,3,1") ➞ 8
shortestDistance("-5,2,3,1") ➞ 8.06

Решение на нашем сайте.

#задача #coding
Tips & Tricks. Приёмы для ускорения кода на Python

Для ускорения кода на Python программисты могут использовать много приемов. Мы собрали несколько самых простых и при этом самых эффективных из них.

#tipsandtricks
Задача на логику. Угадай код замка и выберись из темницы

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

Злодеи согласны отпустить одного из вас — если он решит загадку и угадает комбинацию для кодового замка. А двое остальных наутро познакомятся с чудовищами…

Вы решаете, что пойдет Зара. Она возьмет с собой передатчик, чтобы вы могли слышать вопросы, котоыре ей зададут. Тогда вы сможете тоже попытаться решить загадку и сбежать.

Зара ушла. Через некоторое время вы слышите чужой голос. Этот голос велит Заре ввести код из трех положительных целых чисел. Числа должны идти в порядке возрастания, то есть, второе число будет больше или равно первому, а третье больше или равно второму.

Заре будут даны три подсказки. Но если она угадает неправильно или скажет что-нибудь вслух, ее бросят обратно в темницу.

Голос дал первую подсказку: произведение этих трех чисел равно 36.

Когда Зара жестом попросила о второй подсказке, ей было сказано, что сумма этих трех чисел такая же, как номер прохода, через который она пришла. Зара, конечно, знала этот номер, но вы-то — нет!

Если бы на этом этапе Зара могла ввести нужную комбинацию, она, непременно сбежала бы. Но она попросила третью подсказку.

Голос сказал, что самое большое число встречается в комбинации только один раз.

Наступила тишина и на мгновение проход открылся. Вы поняли, что Заре удалось сбежать. К сожалению, передатчик перестал работать, так что вы больше не можете получить никакой информации.

Сможете определить нужную комбинацию и тоже сбежать?

Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.

#логическаязадача
ООП. Классы в Python

Кратко разбираем, что такое классы и как их создавать.

#ооп
Есть два стула…Python или Go. На примере Kubernetes

Как связать код и инфраструктуру в единое целое? Как использовать Kubernetes в приложениях на все 100%, контролируя любую абстракцию в кластере?

Поговорим об этом на бесплатном вебинаре от Слёрма 21 августа в 19:00 мск 😢

Обсудим:

😉 «Умный» автоскейлинг на основе бизнес-метрик
😉 Модификация манифестов приложений на лету
😉 Динамическая приоритизация использования ресурсов кластера в мультитенантной архитектуре
😉 Кастомизируемый роутинг для stateful приложений с закреплением клиентов за нужными подами в условиях переподключения клиентов

Зачем все это нужно и как реализовать задуманное? Покажем на кейсах Python и Golang.

Спикер: Виталий Лихачев, SRE в booking.com, ex-Avito Senior Software Engineer

Подробности в боте. Присоединяйтесь!

Реклама ООО «Слёрм» ИНН 3652901451
Please open Telegram to view this post
VIEW IN TELEGRAM
Тест. Работа со списками, кортежами, словарями в Python

Работа со списками - ежедневная рутина Python-разработчика. То же касается словарей и кортежей. Хорошо ли вы знаете эти темы?

#тест
Топ. Как создать конвертер валют на Python

Конвертер валют — это приложение, позволяющее быстро переводить одну валюту в другую по курсу. Такие инструменты массово доступны в интернете, воспользоваться ими можно бесплатно. В этой статье мы разберем, как создать конвертер валют на Python.

#топ
Задача с кодом. Возраст отца и сына

Создайте функцию, которая будет принимать два аргумента: возраст отца f_age и возраст сына s_age. Функция должна высчитывать, сколько лет назад отец был или через сколько лет он будет в два раза старше сына.

Примеры:

age_difference(36, 7) ➞ 22
# Через 22 года отцу будет 58 лет, а сыну 29

age_difference(55, 30) ➞ 5
# 5 лет назад отцу было 50, а сыну 25

age_difference(42, 21) ➞ 0

Решение на нашем сайте.

#задача #coding
Tips & Tricks. Как исправить ошибку NameError в Python

Рассмотрели несколько примеров кода, показывающих, как и почему возникает ошибка NameError, и показали, как ее исправить.

#tipsandtricks
Задача на логику. Несушки

У крестьянки было 3 курицы, которые несли по 3 яйца за 3 дня. Однажды она решила, что так дело не пойдет и яиц надо больше. Поэтому крестьянка купила дополнительно 12 несушек.

Сколько яиц все куры вместе нанесут за 15 дней? (Примем, что яйценоскость всех кур одинакова).

Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.

#логическаязадача
Управление состоянием приложений в Kubernetes выходит из-под контроля?

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

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

🗓 Присоединяйтесь к открытому вебинару 28 августа в 20:00 мск!

Урок будет полезен DevOps-инженерам, backend-разработчикам, fullstack-разработчикам и архитекторам ПО.

🔥 Встречаемся в преддверии старта курса «DevOps-практики и инструменты». Все участники вебинара получат специальную цену на обучение!

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/czEIJM

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Тест. Работа с True/False в Python

Программистам часто приходится работать с логическим типом данных. Значения True/False используются в Python повсеместно: в условных конструкциях, циклах, переменных.

Проверьте, насколько хорошо вы знакомы с булевыми значениями. Пройдите этот тест 10 вопросов!

#тест
Топ. property() в Python

property() позволяет вам превращать атрибуты класса в свойства или управляемые атрибуты.

В этой статье:
- создание атрибутов с помощью property()
- использование property() в качестве декоратора
- предоставление атрибутов только для чтения
- создание атрибутов, доступных для чтения и записи
- предоставление атрибутов только для записи
- property() в действии

#топ
Задача с кодом. Сколько нулей?

Напишите функцию, которая будет принимать число n и возвращать количество нулей, стоящих в конце факториала этого числа.

Формула факториала: n! = 1 * 2 * 3 * ... * n

Подсказка: не нужно вычислять факториал. Постарайтесь найти другой способ определения количества нулей.

Примеры:

trailing_zeros(0) ➞ 0
# 0! = 1
# Нулей нет

trailing_zeros(6) ➞ 1
# 6! = 120
# 1 нуль в конце

trailing_zeros(1000) ➞ 249
# 1000! имеет 249 нулей в конце

Решение на нашем сайте.

#задача #coding
Tips & Tricks. Распаковка словаря в Python

Рассмотрели четыре способа преобразовать многоуровневый словарь (т.е. содержащий вложенные словари) в одноуровневый, «плоский». Каждый из этих методов имеет свои плюсы и минусы (кратко проанализировали производительность).

#tipsandtricks #словари
Задача на логику. Градусы между стрелками

На часах 3 часа 15 минут, сколько градусов между стрелками?

Пишите свои варианты в комментариях, а правильный ответ мы опубликуем завтра.

#логическаязадача
Ответ к задаче "Градусы между стрелками"

1 час = 12 пятиминуток,
1 час = 360 градусов
одна пятиминутка — 360 / 12 = 30 градусов.

30 градусов разделить на 4 получается 7.5 градусов, это и есть угол между стрелками.

#логическаязадача
Топ. Итераторы и генераторы в Python

В этой статье:
- итераторы (для чего они нужны и когда их следует использовать)
- итерируемые объекты (чем они отличаются от итераторов)
- контейнеры и использование концепции итераторов
- Itertools
- генераторы и генераторные выражения

#топ