Разъяснивший Python
8.16K subscribers
2.44K photos
40 videos
30 files
2.29K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Matplotlib: Тепловые карты

Тепловые карты позволяют визуализировать данные в виде цветной матрицы. В ней каждый цвет соответствует определенному значению. Это полезно при анализе корреляций между переменными, либо если надо отобразить матрицы расстояний/весов. В данной примере создается корреляционная матрица и визуализируется как тепловая карта.

TwoSlopeNorm делает так, что ноль в корреляции становится белым. Таким образом проще разделять положительные и отрицательные связи. Красный цвет используется для отрицательной корреляции, синий для положительной.

Ссылка на код

Разъяснивший Python
Модуль unittest или библиотека pytest для написания и автоматического тестирования кода

В этих примерах мы используем модуль unittest и библиотеку pytest для написания и запуска тестов нашего кода. В обоих случаях мы определяем функцию add, которую хотим протестировать, и функции тестов для проверки ее работоспособности. В unittest мы создаем класс TestAddFunction и определяем в нем метод test_add, который содержит утверждения с помощью self.assertEqual. В pytest тестовая функция просто использует утверждения assert.

Разъяснивший Python
Модуль pickle

В этом примере мы используем модуль pickle для сериализации объекта data (словарь) в байтовую строку с помощью pickle.dumps. Затем мы десериализуем байтовую строку обратно в объект с помощью pickle.loads и получаем исходный словарь.

Разъяснивший Python
Модуль asyncio для асинхронной работы с сетью и вводом-выводом

В этом примере мы используем модуль asyncio для асинхронного выполнения трех задач, которые имитируют запросы к разным URL-адресам. Мы определяем асинхронную функцию fetch_data, которая ожидает выполнения ввода-вывода (в данном случае, ожидание 2 секунды с помощью await asyncio.sleep(2)). Затем мы используем asyncio.gather для параллельного выполнения всех трех задач в функции main.

Разъяснивший Python
Асинхронные библиотеки, такие как aiohttp, для эффективной работы с сетью в асинхронном режиме

В этом примере мы используем асинхронную библиотеку aiohttp для выполнения асинхронных запросов к разным URL-адресам и получения данных в формате JSON. Мы определяем асинхронную функцию fetch_data, которая использует aiohttp.ClientSession() для создания сессии и session.get(url) для выполнения асинхронного GET-запроса. Затем мы используем await response.json() для получения данных из ответа в формате JSON.

Разъяснивший Python
Модуль logging для логирования ошибок и событий в вашей программе

В этом примере мы используем модуль logging для логирования ошибки деления на ноль. Мы настраиваем логирование с помощью logging.basicConfig и указываем уровень логирования (level=logging.DEBUG), формат сообщений (format='%(asctime)s - %(levelname)s - %(message)s') и файл, в который будут записаны логи (filename='app.log'). Затем мы используем логирование в функции divide для записи информации об успешном делении или ошибке деления на ноль.

Разъяснивший Python
Модуль contextvars для работы с контекстными переменными в асинхронном коде

В этом примере мы используем модуль contextvars для работы с контекстными переменными в асинхронном коде. Мы создаем контекстную переменную user_id с помощью contextvars.ContextVar и устанавливаем ее значение с помощью user_id.set() внутри асинхронной функции greet_user. Значение переменной доступно только в рамках текущего контекста выполнения. Таким образом, при каждом вызове greet_user мы можем устанавливать и получать разные значения контекстной переменной.

Разъяснивший Python
Asyncio.Queue для обмена данными между асинхронными задачами

В этом примере мы используем asyncio.Queue для обмена данными между асинхронными задачами producer и consumer. producer производит данные и помещает их в очередь с помощью queue.put(), а consumer забирает данные из очереди с помощью queue.get() и обрабатывает их. Когда producer завершает работу, мы помещаем специальное значение None в очередь, чтобы consumer завершил свою работу.

Разъяснивший Python
Модуль asyncio.Lock для синхронизации доступа к общим ресурсам

В этом примере мы используем asyncio.Lock для синхронизации доступа к общим ресурсам, чтобы предотвратить конкурентный доступ к общей переменной из нескольких асинхронных задач. Обе задачи update_counter используют один и тот же объект lock для получения блокировки перед обновлением счетчика. Только одна задача может захватить блокировку и выполнять обновление, в то время как другая задача ожидает, пока блокировка не будет освобождена.

Разъяснивший Python
Функция range()

В python range() – одна из встроенных функций. Она используется с циклом for для выполнения блока кода определенное количество раз.

Разъяснивший Python
break

В
python break используется для преждевременного выхода из цикла for. Он предназначается для прерывания цикла при выполнении определенного условия. Допустим, у нас есть список чисел, и мы хотим проверить, присутствует ли число. Мы можем перебрать список чисел и, если число найдено, выйти из цикла, потому что нам не нужно продолжать перебирать оставшиеся элементы.

Разъяснивший Python