Python tricks | Хитрости Питона
5.67K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

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

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
​​Создание скриншотов

Модуль pyscreenshot позволяет делать скриншоты как всего экрана, так и его части. Для его работы должна быть корректно установлена библиотека pillow.

Для создания скриншота используется метод grab, для сохранения – save.

Не забудьте установить библиотеку командой pip install pyscreenshot
​​Узнаём скорость интернета

Воспользуемся библиотекой Speedtest.

У объекта класса Speedtest методы download() и upload() , которые отдают скорость скачивания и загрузки данных.

Методы отдают результат в байтах, поэтому переведем их в мегабайты для удобочитаемости
​​Нижнее подчеркивание

В Python имя переменной может состоять из одного подчеркивания.

Данная переменная используется в интерактивном режиме для хранения результата последнего выполненного выражения. Для этого воспользуйтесь консолью python
​​Прогресс выполнения программы

Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль tqdm является простым и лаконичным вариантом.
​​Присваивание нумерации каждому итерируемому элементу

Вызов функции enumerate(iter)присваивает значение счетчика (индекса) каждому элементу итерации iter.
​​Генерация случайных данных

Очень часто при создании приложений возникает ситуация, когда нам нужны данные для тестирования различных функциональных возможностей.
Чтобы решить эту проблему и работать с более разнообразными и реалистичными данными, изобретательные разработчики создали библиотеку Faker, которая может генерировать случайныe данныe.

Для установки библиотеки используйте команду
pip install Faker
​​Преобразование текста в числа

Библиотека Numerizer поможет преобразовать буквенную запись значений в численную

Для использования данного модуля установите его командой pip install numerizer
​​Эмодзи

Работа с эмодзи может быть реализована с помощью модуля emoji, представленного в Python. Для установки данного модуля используйте команду pip install emojiв вашей командной строке.
Список всех доступных эмодзи вы можете посмотреть по ссылке
​​Рисуем графы

Модуль objgraph позволяет нарисовать граф объектов. Функция show_refs() отобразит связи между объектами и сохранит картинку в нужную вам дерикторию.
Не забудьте установить библиотеку командой pip install objgraph в вашей командной строке.
​​Изменяем размер изображения

Для изменения размера изображения воспользуемся библиотекой pillow.Функцией open()откроем нужное нам изображение и изменим его размер функцией resize()
Для того, чтобы использовать данный модуль, не забудьте его установить командой pip install pillow
​​Округление чисел с плавающей точкой

Функция round() округляет дробные числа до целых. Если дробная часть больше 0.5, то округление происходит в большую сторону. Если меньше - в меньшую.
​​Проверяем возможность вызова объекта

Для проверки возможности вызова воспользуемся встроенной функцией callable(). Она возвращает True или False в зависимости от того, имeет ли данный объект метод __call__
​​Запуск python скриптов из командной строки

Самым распространенным вариантом использования является простой вызов скрипта. Создайте файл с расширением .py и напишите туда необходимый код для вопролнения. Чтобы выполнить написанный вами код из командной строки, перейдите в нее, воспользуйтесь командой python и передайте необходимый файл
​​Планировщик задач

Периодические задачи - это задачи, которые выполняются многократно в течение определенного промежутка времени без вмешательства человека или с минимальным вмешательством. В период быстрого развития данных и технологий бывает необходимо запускать сценарии в определенное время или через промежуток времени.
С помощью библиотеки schedule вы можете запускать свой скрипт Python для выполнения периодических задач
Установите модуль командой pip install schedule
​​Передаем функцию в качестве аргумента

Любая объявленная функция может быть передана в другую функция в качестве аргумента. Поскольку каждая функция является объектом, то передается ссылка на эту функцию. Функция, которая получает ссылку может по этой ссылке вызывать другую функцию соблюдая правильное задание количества и типа параметров.
​​StackOverflow прямо из консоли

Зависли над какой-то проблемой и не можете вспомнить её решение? Нужно зайти на StackOverflow, но не хочется покидать терминал?
Установите модуль howdoi командой pip install howdoi и ищите ответы не выходя из консоли
​​Развертывание списка

Иногда есть необходимость развернуть несколько вложенных списков в один. Для этого может пригодиться встроенная библиотека itertools, которая с легкостью выполнит поставленную задачу
​​Как узнать версию python на вашем компьютере

Воспользуемся встроенным модулем sys. С помощью переменной version_info, которая хранит необходимую информацию для нашей задачи, узнаем версию python, которую используем в данный момент
​​Ограничение импорта

Для того, чтобы ограничить импортирование некоторых объектов, мы можем создать список __all__, в который передадим все объекты, которые будут импортироваться при импорте вида from module import *
​​Работа с ip адресами

Если вам приходится писать программы для работы с сетью — это значит, что вам может очень пригодиться модуль ipaddress.

Одним из вариантов его использования является генерация списка IP-адресов из диапазона адресов, заданных в формате CIDR (Classless Inter-Domain Routing, или бесклассовая адресация).
Установите библиотек командой pip install ipaddress