⚡️ Что такое декоратор?
Это — вызываемый объект (функция, класс с
Создаются они довольно просто, а используются практически везде. Это функция, которая возвращает функцию, которая меняет поведения другого объекта (см. пример).
Таким образом кодом становится намного легче управлять, добавлять новые фичи и контролировать поведение отдельных частей программы.
#теория
Это — вызываемый объект (функция, класс с
call), с
пособный менять поведение другой функции, при этом оставляя код внутри неё таким же.Создаются они довольно просто, а используются практически везде. Это функция, которая возвращает функцию, которая меняет поведения другого объекта (см. пример).
Таким образом кодом становится намного легче управлять, добавлять новые фичи и контролировать поведение отдельных частей программы.
#теория
⚡️ Задачка с собеседования | #Medium
Условие:
Вам нужно узнать, является ли предложение панграммой? Это предложения, в котором используются все буквы алфавита как минимум раз
Пример:
is_pangram('The quick brown fox jumps over a lazy dog') -> True
is_pangram('Sphinx of black quartz, judge my vow') -> True
is_pangram('not pangram') -> False
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам нужно узнать, является ли предложение панграммой? Это предложения, в котором используются все буквы алфавита как минимум раз
Пример:
is_pangram('The quick brown fox jumps over a lazy dog') -> True
is_pangram('Sphinx of black quartz, judge my vow') -> True
is_pangram('not pangram') -> False
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Логи и Loguru
Все слышали про встроенный модуль logging, но его довольно тяжело настраивать. Ему на замену пришёл loguru.
Установка:
Все преимущества модуля вы, к слову, можете почитать в документации.
#миниурок #loguru
Все слышали про встроенный модуль logging, но его довольно тяжело настраивать. Ему на замену пришёл loguru.
Установка:
pip install loguru
Он быстро настраивается, делает красивый вывод ошибок с поддержкой цветов, поддерживает отправку информации на почту и асинхронность.Все преимущества модуля вы, к слову, можете почитать в документации.
#миниурок #loguru
⚡️ Работаем с данными
agate — библиотека для для анализа данных, их обработки и простого вывода. Раньше она называлась journalism.
Установка:
#миниурок #agate
agate — библиотека для для анализа данных, их обработки и простого вывода. Раньше она называлась journalism.
Установка:
pip install agate
Модуль считается упрощённой альтернативой NumPy и Pandas с более простым и читаемым кодом. Вы можете фильтровать данные, сортировать их, редактировать, суммировать и делать это довольно быстро.#миниурок #agate
⚡️ Задачка с собеседования | #Medium
Условие:
Вам нужно отсортировать набор чисел на основе их значимости. Определяется она суммой всех цифр числа. Если же веса одинаковые у двух чисел, то они сравниваются как строки ('ac' < 'bd').
Пример:
solution('56 65 100 99 68 86 180 90') -> '100 180 90 56 65 68 86 99'
solution('103 123 4444 99 2000') -> '2000 103 123 4444 99'
solution('2000 10003 9999 11 11 22 123') -> '11 11 2000 10003 22 123 9999'
📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам нужно отсортировать набор чисел на основе их значимости. Определяется она суммой всех цифр числа. Если же веса одинаковые у двух чисел, то они сравниваются как строки ('ac' < 'bd').
Пример:
solution('56 65 100 99 68 86 180 90') -> '100 180 90 56 65 68 86 99'
solution('103 123 4444 99 2000') -> '2000 103 123 4444 99'
solution('2000 10003 9999 11 11 22 123') -> '11 11 2000 10003 22 123 9999'
📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇
#Задачка_с_собеседования
⚡️ Проверка данных
Пользователи так и норовят запихнуть в важные поля что-то не то, так ещё и Python подливает масло в костёр со своей динамической типизацией. В этой ситуации помогает pydantic.
Установка:
Он занимается не только валидацией, но и решает проблемы с динамической типизацией. Подробнее можете почитать в документации.
#миниурок #pydantic
Пользователи так и норовят запихнуть в важные поля что-то не то, так ещё и Python подливает масло в костёр со своей динамической типизацией. В этой ситуации помогает pydantic.
Установка:
pip install pydantic
Модуль пользуется популярностью, имеет хорошую документацию и поддерживает PyCharm, VSCode. Код выглядит просто и выполняется быстро (сравнение тут).Он занимается не только валидацией, но и решает проблемы с динамической типизацией. Подробнее можете почитать в документации.
#миниурок #pydantic
Что выведет код выше?
Anonymous Quiz
16%
<map object at ...>
24%
<class 'list'>
17%
<class 'type'>
29%
Ошибку
14%
Узнать ответ
⚡️ Переводим с помощью гугла
В мире существует огромное количество языков и простому разработчику с ними не совладать. В таких ситуациях помогают переводчики, а доступ к одному из них даёт googletrans.
Установка:
Проблема официального инструмента гугл, в том что он платный. А эта библиотека — бесплатная альтернатива. Подробнее, как обычно, можно почитать в документации.
#миниурок #googletrans
В мире существует огромное количество языков и простому разработчику с ними не совладать. В таких ситуациях помогают переводчики, а доступ к одному из них даёт googletrans.
Установка:
pip install googletrans
Учтите, что поскольку модуль постоянно работает с серверами гугла, приложение всегда должно быть подключено к сети.Проблема официального инструмента гугл, в том что он платный. А эта библиотека — бесплатная альтернатива. Подробнее, как обычно, можно почитать в документации.
#миниурок #googletrans
Что выведет код выше?
Anonymous Quiz
52%
True True
26%
True False
5%
False True
2%
False False
9%
Ошибку
6%
Узнать ответ
⚡️ Задачка с собеседования | #Medium
Условие:
Вам дан IP адрес, но в нём нет разделителей (точек). Вам нужно найти все возможные правильные IP-адреса. Как-то изменять цифры или их порядок нельзя. Количество цифр всегда будет меньше 13.
Пример:
restore_ip('25525511135') -> ['255.255.11.135', '255.255.111.35']
restore_ip('0000') -> ['0.0.0.0']
restore_ip('1010011256') -> ['10.100.112.56']
📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам дан IP адрес, но в нём нет разделителей (точек). Вам нужно найти все возможные правильные IP-адреса. Как-то изменять цифры или их порядок нельзя. Количество цифр всегда будет меньше 13.
Пример:
restore_ip('25525511135') -> ['255.255.11.135', '255.255.111.35']
restore_ip('0000') -> ['0.0.0.0']
restore_ip('1010011256') -> ['10.100.112.56']
📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇
#Задачка_с_собеседования
⚡️ Работаем с HTML
Люди, которые работали с JQuery, это пост для вас. Теперь в Python можно работать с XML файлами так же, как и в JQuery.
Установка:
Поскольку это всё таки не JavaScript, у модуля есть ограничения, которые описаны в документации.
#миниурок #pyquery
Люди, которые работали с JQuery, это пост для вас. Теперь в Python можно работать с XML файлами так же, как и в JQuery.
Установка:
pip install pyquery
Поиск, манипуляция с атрибутами и работа с CSS проходит практически так же, как и в JQuery. После работы вы можете получить новый HTML, вызвав у главного объекта .html()
.Поскольку это всё таки не JavaScript, у модуля есть ограничения, которые описаны в документации.
#миниурок #pyquery