Разъяснивший Python – Telegram
Разъяснивший Python
7.71K subscribers
2.77K photos
40 videos
30 files
2.65K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Разница между списками

Возвращает разницу между двумя списками после применения функции к каждому элементу обоих списков.

Разъяснивший Python
Наличие дублей

Проверяет, есть ли в списке повторяющиеся значения, пользуясь тем, что set()содержит только уникальные элементы

Разъяснивший Python
Склеивание n строк в одну

С помощью этого фрагмента можно сильно сэкономить память. Достаточно записать строку n раз без использования циклов

Разъяснивший Python
Объединение двух словарей

В Python 2 для соединения двух словарей мы использовали метод update(). В Python 3.5 процесс еще проще.

В этом же скрипте объединены два словаря. В случае пересечения используются значения из второго словаря.

Разъяснивший Python
Проверка использования памяти объектом

Возвращает размер объекта в байтах.
Если указано значение по умолчанию, то оно вернется, если объект не предоставляет способа получить размер. В противном случае возникнет исключение TypeError.
Getsizeof() вызывает метод объекта sizeof и добавляет размер дополнительной информации, которая хранится для сборщика мусора, если он используется.

Разъяснивший Python
Генераторные выражения в Python

Для создания генераторов на скорую руку можно использовать выражения (как и для генераторов списка).

Разъяснивший Python
Реверс списка и обратная строка

Скорее всего, вы используете обратную функцию для инверсионной записи списков или строк. Но знаете ли вы, как осуществить инверсию более эффективным способом?

Разъяснивший Python
Использование изменяемых типов для аргументов, устанавливаемых по умолчанию

Распространенная проблема возникает при назначении изменяемых типов данных для аргументов по умолчанию.

Python оценивает значения по умолчанию для изменяемых типов данных только один раз, во время создания функции. Он не будет инициализировать значение по умолчанию для любого последующего вызова.

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

Разъяснивший Python
Удаление специальных символов из строки с применением метода sub из пакета re

Давайте воспользуемся функцией sub из пакета re, чтобы удалить специальные символы.

Метод sub() используется для гибкой замены одних символов другими.

Разъяснивший Python
Быстрое измерение времени выполнения куска кода

Иногда нужно понять, где в проекте просадка по производительности, но тянуть профилировщик — слишком долго. В таких случаях помогает простой таймер через time.perf_counter().

Он даёт высокоточную измерительную шкалу и идеально подходит для быстрого анализа производительности отдельных функций.

Итог:
time.perf_counter() — самый простой способ быстро понять, где код тормозит, без сторонних библиотек и сложных инструментов.

Разъяснивший Python
⚡️ Linux и DevOps теперь в Telegram!

Ребята делают реально классный канал про IT — просто, понятно и без воды.
О Linux, DevOps, разработке, безопасности и инструментах, которые помогают работать эффективнее.

Подписывайтесь: @recura_tech
1
Как объединить словари в Python с помощью метода dict.update()

Самый очевидный путь – найти уже готовую функцию, то есть посмотреть на то, какие есть встроенные методы у словарей. Если вы исследуете класс словарей dict, вы найдете много различных методов. Один из них — метод update(), который можно использовать для «вливания» одного словаря в другой. Он нам и нужен!

Разъяснивший Python
Как сделать запрос PUT

Нам часто требуется обновить существующие данные в API. Используя запрос PUT, мы можем обновить данные полностью. Это означает, что, когда мы делаем запрос PUT, он заменяет все старые данные новыми.

В запросе POST мы создали новый продукт с идентификатором 21. Давайте обновим старый продукт на новый, сделав запрос PUT к конечной точке products/<product_id>.

Разъяснивший Python
🤨1
Пример генератора данных из библиотеки Keras

Одно из типичных применений генераторов — это использование генератора данных в библиотеке Keras. Причина, по которой он полезен, заключается в том, что мы не хотим хранить все данные в памяти, а хотим создавать их на лету, когда это необходимо в процессе обучения. Дело в том, что в Keras модель нейронной сети обучается батчами, поэтому генератор должен выдавать строго определенные пакеты данных.

Разъяснивший Python
Декораторы в Python

Декораторы — мощный инструмент в Python. Вы можете их использовать для тонкой настройки работы класса или функции. Декораторы можно считать функцией, которая применена к другой функции. Чтобы определить функцию-декоратор для декорируемой функции, используется знак @ и после него название функции. Из этого следует, что декоратор принимает в качестве аргумента функцию, которою он декорирует.

Рассмотрим функцию square_decorator(), которая в качестве аргумента принимает функцию и в результате также выдают функцию.

Разъяснивший Python
Контекст функций

Язык Python допускает применение вложенных функций, в которых вы можете определить внутреннюю функцию внутри внешней. В Python есть несколько замечательных свойств, связанных со вложенными функциями.

Разъяснивший Python
Превращаем Python в кейлоггер за 5 строк!

Этот код предназначен только для образовательных целей! Не используйте его в незаконных целях.

Как это работает?
pynput.keyboard.Listener перехватывает нажатия клавиш.
log_key(key) записывает все нажатия в файл log.txt.
listener.join() запускает бесконечное слежение за клавиатурой.

Где это можно использовать?
Контроль собственных действий (например, восстановление случайно закрытого текста).
Создание горячих клавиш для своих приложений.
Отладка нажатий при тестировании программ.

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