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

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

@aldrson
Download Telegram
Задача на логику. Анины котята

Увидит Аня где-нибудь брошенного котенка, непременно подберет и принесет домой. У нее всегда на воспитании и пристройстве несколько котят, а сколько именно, она не любит говорить, чтобы над ней не смеялись.

Спросят у нее:

— Сколько у тебя сейчас котят?

— Немного, — ответит она. — Три четверти их числа, да еще три четверти одного котенка.

Друзья думают, что она это так, чтобы отвязались, а между тем Аня говорит чистую правду. Сможете определить, сколько у Ани котят?

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

#логическаязадача
Топ. Социальная аутентификация в приложении на Flask

В этом руководстве мы рассмотрим, как добавить социальную аутентификацию с помощью GitHub и Google в приложение на Flask.

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

Напишите функцию isPowerOfFour(n), которая принимает целое число n и возвращает True, если данное число является степенью числа 4. В противном случае она должна вернуть значение False.

Целое число n является степенью числа четыре, если существует целое число x такое, что n == 4^x.

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

#задача #coding
Ответ к предыдущей задаче для новичков

# Функция которая проверяет является ли число степенью 4
def isPowerOfFour(n):
if n <= 0:
return False

quaternary = format(n, 'b')
return quaternary.count('1') == 1 and quaternary.count('0') % 2 == 0

# Тесты для функции isPowerOfFour(n)
def test_isPowerOfFour():
assert isPowerOfFour(16) == True
assert isPowerOfFour(5) == False
assert isPowerOfFour(1) == True
assert isPowerOfFour(0) == False
assert isPowerOfFour(64) == True
assert isPowerOfFour(32) == False


#задача #coding
Строки. Как преобразовать строку в байты в Python

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

#строки
Задача с кодом. Нейтрализация

Напишите функцию, которая будет принимать две строки, состоящие из знаков «+» и «-», и возвращать строку — результат их взаимодействия.

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

- плюс и плюс дают плюс
- минус и минус дают минус
- плюс и минус нейтрализуют друг друга и вместе дают 0.

Разбор примера

neutralise("+-+", "+--") ➞ "+-0"
# Сравниваем первые символы двух строк, потом следующие два символа и т.д.
# "+" и "+" возвращают "+".
# "-" и "-" возвращают "-".
# "+" и "-" возвращают "0".
# Возвращаем строку символов.

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

№ 1
neutralise("--++--", "++--++") ➞ "000000"

№ 2
neutralise("-+-+-+", "-+-+-+") ➞ "-+-+-+"

№ 3
neutralise("-++-", "-+-+") ➞ "-+00" 

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

#задача #coding
Tips & Tricks. 4 полезных приема работы с Python

В этой статье:

- enumerate()
- доступ к элементам словаря с помощью .get()
- перебор нескольких списков с помощью zip()
- f-строки для упрощения вывода информации в консоль

#tipsandtricks #функции #словари #списки
Задача на логику. Пороховой заговор

После провала Порохового заговора в 1605 году в Англии было арестовано шестеро человек. Всех допрашивали по отдельности, выпытывая, кто из остальных предатель, а кто верен Короне. Арестованные дали следующую информацию:

Августин: Феликс верен Короне, а Эразм - предатель.
Бартоломью: Августин верен.
Кутберт: Феликс верен, а Бартоломью - предатель.
Дионис: Кутберт верен, а Бартоломью - предатель.
Эразм: Дионис - предатель.
Феликс: Августин верен.

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

Вопрос: сколько всего предателей?

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

#логическаязадача
Друзья, книги по Python можно легко скачать в канале: @pythonbooks

А .ru книги тут:
@pythonknigiru
Машинное обучение. Очистка данных в Python: руководство для начинающих

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

Книги по ML - @maschinelearning

#ml
Тест. Int (уровень — средний)

Целые числа (int) в Python 3 ничем не отличаются от обычных чисел. Они поддерживают набор самых обычных математических операций.

Хорошо ли вы умеете пользоваться этим типом данных? Пройдите тест по int из 10 вопросов и проверьте!

#тест
Задача с кодом. Цензура

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

Примечания:

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

Примеры:

censor("The code is fourty") 
➞ "The code is ******"

censor("Two plus three is five")
➞ "Two plus ***** is five"

censor("aaaa aaaaa 1234 12345")
➞ "aaaa ***** 1234 *****"

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

#задача #coding
Tips & Tricks. Чтение и запись переменных окружения в Python

Рассматриваем способы установки и получения переменных окружения средствами языка Python.

#tipsandtricks #модули
Задача на логику. Кто фронтендер, а кто бэкендер?

Вы заходите в опенспейс IT-компании «TwoWayLand». В этой компании фронтендеры всегда говорят правду, а бэкендеры всегда лгут. Повстречав троих парней, Сашу, Колю и Диму, вы пытаетесь разобраться, чем они занимаются.

— Дима занимается бэкендом, а я — фронтендер, — сказал Саша. — По крайней мере одно из этих утверждений истинно.

— Саша мог заявить, что я — бэкендер, — сказал Коля.

— Ни Саша, ни Коля фронтендом не занимаются, — заявил Дима.

Вопрос: кто занимается фронтендом, а кто — бэкендом?

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

#логическаязадача
Основы. Абсолютное значение числа в Python

При анализе данных часто требуется быстро найти абсолютное значение набора чисел. Для выполнения этой задачи Python предлагает простую встроенную функцию — abs(). Эта функция позволяет программистам получить величину числа, не зависящую от его знака, по сути делая число положительным.

#основы
Задача для новичков

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

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

#задача #coding
Ответ к предыдущей задаче для новичков

# Функция, которая находит добавленную букву
def find_added_letter(s, t):
count = {}

for char in t:
if char in count:
count[char] += 1
else:
count[char] = 1

for char in s:
count[char] -= 1
if count[char] == 0:
del count[char]

return list(count.keys())[0]

# Тесты для функции find_added_letter(s, t)
def test_find_added_letter():
assert find_added_letter("abcd", "abcde") == "e"
assert find_added_letter("", "y") == "y"
assert find_added_letter("hello", "heoll") == "l"
assert find_added_letter("abc", "acb") == "b"
assert find_added_letter("xy", "xyz") == "z"


#задача #coding
Основы. Как проверить существование файла с помощью Python

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

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

#основы
Хотите прокачать свои скиллы в Python? Расширить навыки работы с FastAPI и научиться интегрировать серверную часть с веб-интерфейсом?

Ждем вас на практическом открытом уроке от OTUS, где вы научитесь использовать Jinja-шаблоны для создания HTML-страниц в FastAPI-приложениях. На вебинаре разберём:

— FastAPI и его возможности;
— основы Jinja-шаблонов: синтаксис, переменные, условия и циклы;
— создание простого веб-приложения;
— интеграцию HTML-страницы в FastAPI-приложение.

Спикер Сурен Хоренян — Senior Python Backend Developer, руководитель группы разработки платформы облачного видеонаблюдения в MTS AI.

🗓 Встречаемся 27 июня в 20:00 мск в преддверии старта курса «Специализация Python Developer». Все участники вебинара получат специальную цену на обучение!

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576