Pythonist.ru - образование по питону
26.4K subscribers
81 photos
1 video
927 links
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer.
Реклама: @anothertechrock

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

@aldrson
Download Telegram
Задача на логику. Ориентируемся на местности

Вы стоите где-то на поверхности Земли. Если вы пройдете километр на юг, затем километр на запад, затем километр на север, вы окажетесь в той же точке, где начинали.

Где именно вы находитесь?

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

#логическаязадача
Топ. Отладчик pdb

Инструменты отладки — сердце любого языка программирования. Без них вам будет крайне сложно написать рабочий и чистый код. В этой статье мы познакомим вас с одним из таких инструментов — Python-отладчиком pdb.

#топ
Тест. Наследование в Python

Проверьте, хорошо ли вы знаете принципы наследования и лучшие практики в ООП.

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

Подробное руководство по визуализации данных в Python. В нем мы рассказали про построение графиков при помощи библиотек Pandas, Seaborn и Plotly.

#топ
Задача с кодом. Количество сущностей

Создайте класс User и добавьте способ для проверки количества пользователй (количества сущностей), которые были созданы.

Примеры:
u1 = User("johnsmith10") 
User.user_count ➞ 1
u2 = User("marysue1989")
User.user_count ➞ 2
u3 = User("milan_rodrick")
User.user_count ➞ 3


Также добавьте возможность доступа к имени через атрибуты класса:

u1.username ➞ "johnsmith10" 
u2.username ➞ "marysue1989"
u3.username ➞ "milan_rodrick"


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

#задача #coding
🔥Хотите научиться тестированию веб-приложений на Python?🔥

⌛️Реализуйте цель всего за 5 месяцев на курсе «Python QA Engineer» от OTUS.

❗️Там вы получите все необходимые знания и навыки для создания автоматизированных тестов для компаний и проектов. Вы изучите основы HTML, CSS, JavaScript, PHP, а также фреймворки Selenium WebDriver и PhantomJS.

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

💪Вы можете заранее бесплатно получить полную программу, чтобы убедиться, что она вам подходит! Пройдите вступительный тест прямо сейчас чтобы оставить заявку и получить один из уроков курса подарок: https://otus.pw/uSqN/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Tips & Tricks. Интроспекция в Python

В этой статье мы рассмотрим пять самых полезных функций интроспекции в Python:
- dir()
- type()
- isinstance()
- hasattr()
- id()

#tipsandtricks #функции
Язык фактов, получается 🌚
Задача на логику. Бумага для заметок и релокейт в Новую Зеландию

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

Менеджер взял по 4 листочка красной и зеленой бумаги для заметок. Каждому из кандидатов он прицепил на кепку по два листочка, а еще 2 спрятал в карман. Суть затеянной игры в том, что в Новую Зеландию поедет первый, кто логическим путем определит цвета бумажек на своей кепке.

Менеджер по очереди спрашивает каждого, знает ли он цвет бумажек на своей кепке. Ответы по порядку поступления:

Антон: Нет
Вова: Нет
Сережа: Нет
Антон: Нет
Вова: Да

Вова назвал цвета своих бумажек правильно.

Вопрос: какого цвета были бумажки на его кепке и как он это понял?

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

#логическаязадача
Топ. REST API на Python с Flask, Connexion и SQLAlchemy

Первая часть серии из трех статей. В этой серии мы создадим REST API на базе веб-фреймворка Flask.

Мы сделаем базовый проект Flask, добавим к нему конечные точки и подключим к базе данных SQLite. Далее мы протестируем наш проект при помощи документации API от Swagger UI , которую создадим по ходу дела.

#топ
Задача для новичков

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

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

Напомним, что палиндромом называется строка, которая читается одинаково в обоих направлениях.

Примеры работы данной функции:

makePalindrome("egcfe") --> 'efcfe'
makePalindrome("seven") --> 'neven'

Свои варианты пишите в комментариях! Решение - сегодня вечером.

#задача #coding
🤌 Ключевой инструмент начинающего Python-разработчика

👉 Это декораторы! Освойте их на бесплатном практическом уроке от OTUS.

Где вы:
- рассмотрите, что из себя представляют Декораторы;
- разберете на конкретном примере, как они работают;
- научитесь создавать их самостоятельно.

Занятие пройдёт 6 марта в 20:00 мск и будет приурочено к старту курса «Специализация Python Developer». Доступна рассрочка на обучение!

👉 Зарегистрируйтесь, чтобы занять место: https://otus.pw/HpxM/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Ответ к предыдущей задаче для новичков

def makePalindrome(s):
s = list(s)
n = len(s)
for i in range(n // 2):
j = n - i - 1
if s[i] != s[j]:
s[i] = s[j] = min(s[i], s[j])
return ''.join(s)

#задача #coding
Топ. Преобразование типов данных в Python 3

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

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

Что в нашем канале:
1. Книги по питону, которые помогут вам пройти собеседование на позицию Python Developer.
2. Все книги на русском языке
3. Все книги можно скачать в 2 клика
4. Всё, никакой другой воды.

Подписывайтесь и качайте: @pythonknigiru
Задача с кодом. Игры со сложением

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

Для составления пары берем первую и последнюю цифру числа, продвигаясь от краев к центру.

Пример с разбором

closing_in_sum(2520) ➞ 72
# Первая и последняя цифры - 2 и 0.
# Из цифр 2 и 0 составляем число 20.
# Вторая и предпоследняя цифра - 5 и 2.
# Из цифр 5 и 2 составляем число 52.
# 20 + 52 = 72

Другие примеры

closing_in_sum(121) ➞ 13
# 11 + 2

closing_in_sum(1039) ➞ 22
# 19 + 3

closing_in_sum(22225555) ➞ 100
# 25 + 25 + 25 + 25

Примечания
- Если передано нечетное количество цифр, центральную цифру просто прибавляем к общей сумме (см. пример 1).
- Нуль тоже считаем отдельной цифрой (см. пример 2).

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

#задача #coding
Tips & Tricks. Возврат нескольких значений из функции

Рассказываем, как функции Python могут вернуть несколько чисел или строк.

#tipsandtricks #списки #словари
Задача на логику. Разметка электропроводки

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

Для начала вы включаете все 100 лампочек в доме и спускаетесь в подвал, чтобы приступить к изнурительному процессу разметки. При каждом заходе в подвал вы можете переключать любое число выключателей. После каждого спуска в подвал и переключения выключателей вы поднимаетесь наверх посмотреть, какие лампочки включились, а какие — выключились.

Какое минимальное число заходов в подвал придется совершить, чтобы определить, за какую лампочку отвечает каждый выключатель?

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

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

#логическаязадача
Строки. Как работает конкатенация строк в Python 3?

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

#строки
Задача с кодом. Сумма чисел от 1 до n

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

Примеры:
sum_numbers(5) ➞ 15 
// 1 + 2 + 3 + 4 + 5 = 15
sum_numbers(1) ➞ 1
sum_numbers(12) ➞ 78


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

#задача #coding
Tips & Tricks. Сравнение объектов: «is» vs «==»

Разбираемся на примерах, чем отличается сравнение объектов в Python при помощи операторов "==" и "is".

#tipsandtricks #ооп