Делаем скриншот в две строки
На картинке код, который делает скриншот и сохраняет его. Он будет сохранен в той же директории, откуда запущена программа. Помогает нам в работе замечательный пакет PyAutoGUI.
На картинке код, который делает скриншот и сохраняет его. Он будет сохранен в той же директории, откуда запущена программа. Помогает нам в работе замечательный пакет PyAutoGUI.
Получаем разрешение экрана
Рассмотрим ещё пару возможностей PyAutoGUI. С помощью
Библиотеку можно использовать как для тестирования своих приложений, так и для эмуляции действий пользователей и в целом автоматизации работы компьютера.
Рассмотрим ещё пару возможностей PyAutoGUI. С помощью
pyautogui.size() мы легко можем получить разрешение экрана, а метод pyautogui.moveTo() позволяет перенести курсор на указанную точку (в координатах x и y). Ещё один метод pyautogui.position() возвращает текущие координаты курсора мыши. Библиотеку можно использовать как для тестирования своих приложений, так и для эмуляции действий пользователей и в целом автоматизации работы компьютера.
Время выполнения кода
Часто приходится выбирать между многими вариантами кода. В принятии решения важную роль должна играть его производительность. Кроме первичного анализа по О-нотации можно измерить время выполнения.
На картинке с помощью модуля
Часто приходится выбирать между многими вариантами кода. В принятии решения важную роль должна играть его производительность. Кроме первичного анализа по О-нотации можно измерить время выполнения.
На картинке с помощью модуля
time мы сохраняем время старта куска кода, выполняем его, а затем узнаём конечное время и выводим разницу. Если будете использовать пример с картинки, вставьте свой код вместо комментария.📜 Как вывести список методов и атрибутов объекта x?
Anonymous Quiz
23%
help(x)
28%
info(x)
5%
?x
44%
dir(x)
Как можно более кратко представить запись с картинки сверху?
Anonymous Quiz
8%
A = Y if Z else Y
75%
A = Y if X else Z
5%
A = X if Z else Y
12%
A = X if Y else Z
Получаем информацию по IP
C помощью
Атрибуты
Установка возможна через пакетный менеджер
C помощью
ip2geotools можно получить геолокацию по IP из нескольких баз данных. Метод get из класса DbIpCity позволяет получить информацию по желаемому IP бесплатно. Атрибуты
city, region, country хранят информацию соответственно о городе, регионе и стране. Обратившись к атрибутам latitude и longitude, можно получить широту и долготу. Установка возможна через пакетный менеджер
pip. Документация доступна по ссылке.Метод
У словарей есть метод
Если такого ключа в словаре нет, исключение не выбрасывается, а возвращается значение по умолчанию, которое передаётся вторым аргументом, или же
В примере мы не передаём второй аргумент, и в переменную name попадает
get у словарейУ словарей есть метод
get, который возвращает значение по переданному ключу. Если такого ключа в словаре нет, исключение не выбрасывается, а возвращается значение по умолчанию, которое передаётся вторым аргументом, или же
None, если второй аргумент не передан.В примере мы не передаём второй аргумент, и в переменную name попадает
None. Полезнее было бы передать ещё какую-нибудь строку в метод get, и она бы подставилась в name.Валидаторы данных
Не стоит писать собственные регулярные выражения для валидации почты и URL.
Модуль
Не стоит писать собственные регулярные выражения для валидации почты и URL.
Модуль
validators даёт возможность использовать уже готовые валидаторы для самых распространенных задач. Документация доступна здесь.Template из string
Класс Template — это такой легаси-способ форматировать строки. Полезно знать, как он работает, чтобы не растеряться при встрече со старым кодом.
Данный способ поддерживает передачу переменных по имени и использует $-синтаксис. В актуальных проектах, конечно, использовать его не стоит, f-строки гораздо проще.
Класс Template — это такой легаси-способ форматировать строки. Полезно знать, как он работает, чтобы не растеряться при встрече со старым кодом.
Данный способ поддерживает передачу переменных по имени и использует $-синтаксис. В актуальных проектах, конечно, использовать его не стоит, f-строки гораздо проще.
Method Resolution Order
В Python существует так называемый порядок разрешения методов в классе. Это порядок, где Python ищет нужный атрибут или метод.
Его можно получить при помощи атрибута
Атрибут быстрее всех будет найден именно в классе
В Python существует так называемый порядок разрешения методов в классе. Это порядок, где Python ищет нужный атрибут или метод.
Его можно получить при помощи атрибута
__mro__. Если мы в примере обратимся к val, Python будет искать сначала в классе A, далее в B, затем в C и потом в object. Атрибут быстрее всех будет найден именно в классе
B и будет равен значению 1.Логирование с loguru
Библиотека loguru позволяет упростить логирование в разы, а также настраивается под любой проект. Установка командой
Библиотека loguru позволяет упростить логирование в разы, а также настраивается под любой проект. Установка командой
pip install loguru, импорт объекта logger — и вы можете быстро и безопасно печатать в консоль все необходимые данные. Углубиться в функционал библиотеки можно по ссылке.