Python Community
13.1K subscribers
1.24K photos
26 videos
15 files
712 links
Python Community RU - СНГ сообщество Python-разработчиков

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

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

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
⚡️ Задачка с собеседования | #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.

#миниурок
Что выведет код выше?
Anonymous Quiz
15%
a
48%
b
2%
c
33%
Ошибку
3%
Узнать ответ
⚡️ Создаём REST API

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

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

Этот минималистичный фреймворк упрощает разработку микросервисов. Им пользуются такие проекты, как OpenStack, Opera Software, EMC, что многое говорит о качестве модуля.

У него хорошая документация, а также многие хвалят его исходный код.

#миниурок #falcon
⚡️ Что такое Elipsis?

Это — расширение для срезов. Таким образом, пользователи могут добавлять своё особое поведение в срезы, просто поменяв код __getitem__.

А троеточие — всего лишь константа, обозначающая Ellipsis, то есть matrix[0, ..., 0] и matrix[0, Ellipsis, 0] это одно и то же.

Эту фичу реализует numpy (см. пример). Почитать про неё подробнее можно тут и тут.

#теория