Python Community
12.9K subscribers
1.25K photos
36 videos
15 files
737 links
Python Community RU - СНГ сообщество Python-разработчиков

Чат канала: @python_community_chat

Сотрудничество: @cyberJohnny и @Sergey_bzd

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
Что выведет код выше?
Anonymous Quiz
23%
1
16%
9
29%
27
11%
81
22%
Узнать ответ
👎1
⚡️ Работаем с интернетом

Все известные протоколы хранятся в Tiwsted — сетевом движке. Он позволяет создавать и Web сервера, и SHH, mail клиентов. Но сил при этом требуется больше, по сравнению с специализированными библиотеками.

Установка: pip install twisted

Работать вы можете как с TCP/UDP, так и более высокоуровневыми протоколами: HTTP, SMTP, SSHv2, DNS.

Посмотреть проекты с использованием twisted можно тут, а документация будет тут.

#миниурок
⚡️ Задачка с собеседования | #Medium

Условие:

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

Пример:

is_disarium(75) ➞ False
# 7 ** 1 + 5 ** 2 = 7 + 25 = 32

is_disarium(135) ➞ True
# 1 ** 1 + 3 ** 2 + 5 ** 3 = 1 + 9 + 125 = 135

📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Создаём телеграм бота

Для этого нам нужна библиотека aiogram, которая пользуется огромной популярностью и может работать асинхронно.

Установка: pip install aiogram

Тут ещё можно найти парочку рекомендаций по установке доп. библиотек и то, зачем они нужны.

Модуль похож на telebot, так что вы сможете быстро перенести свой проект, но возможностей несколько больше: он проще и может работать в асинхронном режиме.

Примеры можете посмотреть тут, там же и документация проекта.

#миниурок #aiogram
Что выведет код выше?
Anonymous Quiz
15%
1
10%
3
14%
9
20%
27
23%
Ошибку
19%
Узнать ответ
⚡️ Задачка с собеседования | #Easy

Условие:

На входит идёт список из чисел, вам надо получить самое большое число, объединив все элементы в одно целое.

Пример:

solution([78, 113, 8001]) ➞ 800178113
solution([61, 228, 9]) ➞ 961228
solution([1, 2, 3]) ➞ 321

📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
Что выведет код выше?
Anonymous Quiz
27%
True
21%
False
13%
[1, 2]
7%
None
20%
string
12%
Узнать ответ
⚡️ Задачка с собеседования | #Medium

Условие:

Вам дан массив, который состоит из массивов типа [ID, time], где пользователь ID выполнил какое-то действие в минуту time. Также вам дано число, указывающее на количество возможных пользователей.

Вам нужно вычислить массив ответов размером k элементов так, чтобы для каждого j (1 <= j <= k) answer[j] было числом пользователей, чьё время активности равно j. Учитывайте, что он может в одно и то же время сделать несколько действий, но это считается как одна минута.

Пример:

solution([[0, 5], [1, 2], [0, 2], [0, 5], [1, 3]], 5) ➞ [0, 2, 0, 0, 0]

У ID = 0 ВАП будет 2 (5, 2, 5), и у ID = 1 ВАП будет 2 (2, 3). На answer[2 - 1] пишем количество пользователей, чьё время активности = 2. Это 0 и 1, то есть записываем 2.

solution([[1, 1], [2, 2], [2, 3]], 4) ➞ [1, 1, 0, 0]

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Упрощаем работу с JSON

Программисты — ленивые люди, поэтому они придумали как за счёт ещё одного языка упростить работу с JSON. Называется он JMESPath.

Установка: pip install jmespath

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

Подробнее о самом языке вы можете почитать тут, а про библиотеку тут. А ещё, если надумаете писать свой язык, может посмотреть исходники тут.
⚡️Визуализируем данные

С помощью Streamlit вы можете быстро строить веб приложения для отображения графиков, диаграмм и оформлять страницы без знания фронтенда.

Установка: pip install streamlit

Посмотреть пример можете введя streamlit hello, там будет 4 демо, одна из которых показана на картине выше.

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

#миниурок #streamlit
⚡️ Задачка с собеседования | #Medium

Условие:

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

Пример:

amount_of_pages(5) ➞ 5 # len('12345')
amount_of_pages(25) ➞ 17 # len('1234567891011121314151617')
amount_of_pages(660) ➞ 256

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Небольшие особенности встроенных функций

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

round(x, ndigits) может принимать отрицательные числа во второй аргумент.

isinstance(obj, classinfo) может принимать кортеж во второй аргумент, так можно проверять, относится ли объект к одному из классу.

iter(object, sentine) работает с функциями. В таком случае он вызывает функцию, пока она не вернёт sentine.

#миниурок