Python на примерах
1.39K subscribers
411 photos
6 videos
145 links
Короткие уроки Python на примерах
Download Telegram
Template из string

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

Данный способ поддерживает передачу переменных по имени и использует $-синтаксис. В актуальных проектах, конечно, использовать его не стоит, f-строки гораздо проще.
🥰1🤓1
Method Resolution Order

В Python существует так называемый порядок разрешения методов в классе. Это порядок, где Python ищет нужный атрибут или метод.

Его можно получить при помощи атрибута __mro__. Если мы в примере обратимся к val, Python будет искать сначала в классе A, далее в B, затем в C и потом в object.

Атрибут быстрее всех будет найден именно в классе B и будет равен значению 1.
Если у вас есть список, содержащий в себе другие списки, вот таким нехитрым образом можно объединить все значения в один список.
👍4
Python на примерах pinned «Что выведет данный код?»
Представим ситуацию, когда нужно пройти по массиву, одновременно перебирая не только значения, но и их индексы. В этом поможет функция enumerate.
👍3❤1
Что выведет код сверху?
Anonymous Quiz
24%
0 2 1 3 2 4
9%
0 1 2 3 4 5
35%
Error
33%
0 1 1 2 2 3
👍7🤬3❤2😁2
Логирование с loguru

Библиотека loguru позволяет упростить логирование в разы, а также настраивается под любой проект. Установка командой pip install loguru, импорт объекта logger — и вы можете быстро и безопасно печатать в консоль все необходимые данные. Углубиться в функционал библиотеки можно по ссылке.
👍1
Сокращение if

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

Однако будьте осторожны — такой вариант сокращения кода может привести к плохой читаемости.
👍4❤1
Преобразуем текст в аудио

Чтобы изменить текст на аудио, установите модуль с расширением pip install pyttsx3.

В этой библиотеке есть много модулей, с помощью которых вы можете попробовать изменить голос, громкость и скорость звука.
👍3
Как перевернуть список в Python с помощью метода .reverse()

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

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

Довольно популярная задача. В Python решается легко — передаём в функцию sorted сам словарь, и указываем key=dict.get.
👍2
Выключение компьютера

Если надоело выключать компьютер привычным способом, то можно создать программу на Питон. Причём для её реализации вам потребуется лишь использовать встроенную библиотеку os.
👍9
Работаем с клавиатурой. Библиотека keyborad

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

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

Установка
pip install keyboard

Документация
👍1
Назначаем функцию на нажатие клавиш

Создаем функцию. Далее нам необходима библиотека keyboard. Используем функцию add_hotkey. В качестве аргумента указываем комбинацию и функцию.
👍8
Быстрый deque

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

deque обеспечивает линейную сложность O(1) для операций добавления и выталкивания, у стандартного списка сложность по этим операциям O(n).

Для deque есть возможность использовать стандартные функции — sum, min, max и другие.
Красивая консоль

Зачастую вся информация в консоли - это скучный белый или же черный текст. Согласитесь, такое и читать не интересно. Благо в питоне есть библиотека TermColor.

За счет этой библиотеки мы быстро можем настроить какие именно стили будут применены к тексту в консоли
👍2
Фиксируем нажатые клавиши

Для этого используем событие библиотеки keyboard.on_release(), в качестве аргумента передаем функцию-обработчик. И выводим в консоль.
Случайные числа с модулем random

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

В первом примере мы получаем случайное число от 1 до 10, при этом последняя переданная единица — шаг, т. е. если бы мы передали не её, а например двойку, случайное число бы искалось из диапазона 1, 3, 5 и т. д.

С документацией можно ознакомиться по ссылке.
👍3
Редактор видео

Все еще в поиске крутого видео редактора? Зачем что-то искать, когда есть Python и замечательная библиотека MoviePy :)

За счет MoviePy вы можете перевернуть видео, можете его обрезать, можете изменить количество FPS и можете выполнить ещё много других действий.

Мы создадим программу, что будет принимать видео и отделять от него звук, который будем сохранять в качестве отдельного файла.
👍5😁1