Проверка использования памяти объектом
Возвращает размер объекта в байтах.
Если указано значение по умолчанию, то оно вернется, если объект не предоставляет способа получить размер. В противном случае возникнет исключение TypeError.
Getsizeof() вызывает метод объекта sizeof и добавляет размер дополнительной информации, которая хранится для сборщика мусора, если он используется.
Разъяснивший Python
Возвращает размер объекта в байтах.
Если указано значение по умолчанию, то оно вернется, если объект не предоставляет способа получить размер. В противном случае возникнет исключение TypeError.
Getsizeof() вызывает метод объекта sizeof и добавляет размер дополнительной информации, которая хранится для сборщика мусора, если он используется.
Разъяснивший Python
Генераторные выражения в Python
Для создания генераторов на скорую руку можно использовать выражения (как и для генераторов списка).
Разъяснивший Python
Для создания генераторов на скорую руку можно использовать выражения (как и для генераторов списка).
Разъяснивший Python
Реверс списка и обратная строка
Скорее всего, вы используете обратную функцию для инверсионной записи списков или строк. Но знаете ли вы, как осуществить инверсию более эффективным способом?
Разъяснивший Python
Скорее всего, вы используете обратную функцию для инверсионной записи списков или строк. Но знаете ли вы, как осуществить инверсию более эффективным способом?
Разъяснивший Python
Использование изменяемых типов для аргументов, устанавливаемых по умолчанию
Распространенная проблема возникает при назначении изменяемых типов данных для аргументов по умолчанию.
Python оценивает значения по умолчанию для изменяемых типов данных только один раз, во время создания функции. Он не будет инициализировать значение по умолчанию для любого последующего вызова.
Вы можете не заметить ничего необычного, если выполняете только один вызов функции в своем коде, однако, если вы вызовете её второй раз, Python будет использовать значение по умолчанию, вычисленное во время первого вызова.
Разъяснивший Python
Распространенная проблема возникает при назначении изменяемых типов данных для аргументов по умолчанию.
Python оценивает значения по умолчанию для изменяемых типов данных только один раз, во время создания функции. Он не будет инициализировать значение по умолчанию для любого последующего вызова.
Вы можете не заметить ничего необычного, если выполняете только один вызов функции в своем коде, однако, если вы вызовете её второй раз, Python будет использовать значение по умолчанию, вычисленное во время первого вызова.
Разъяснивший Python
Удаление специальных символов из строки с применением метода sub из пакета re
Давайте воспользуемся функцией sub из пакета re, чтобы удалить специальные символы.
Метод sub() используется для гибкой замены одних символов другими.
Разъяснивший Python
Давайте воспользуемся функцией sub из пакета re, чтобы удалить специальные символы.
Метод sub() используется для гибкой замены одних символов другими.
Разъяснивший Python
Быстрое измерение времени выполнения куска кода
Иногда нужно понять, где в проекте просадка по производительности, но тянуть профилировщик — слишком долго. В таких случаях помогает простой таймер через
Он даёт высокоточную измерительную шкалу и идеально подходит для быстрого анализа производительности отдельных функций.
Итог:
Разъяснивший Python
Иногда нужно понять, где в проекте просадка по производительности, но тянуть профилировщик — слишком долго. В таких случаях помогает простой таймер через
time.perf_counter().Он даёт высокоточную измерительную шкалу и идеально подходит для быстрого анализа производительности отдельных функций.
Итог:
time.perf_counter() — самый простой способ быстро понять, где код тормозит, без сторонних библиотек и сложных инструментов.Разъяснивший Python
⚡️ Linux и DevOps теперь в Telegram!
Ребята делают реально классный канал про IT — просто, понятно и без воды.
О Linux, DevOps, разработке, безопасности и инструментах, которые помогают работать эффективнее.
Подписывайтесь: @recura_tech
Ребята делают реально классный канал про IT — просто, понятно и без воды.
О Linux, DevOps, разработке, безопасности и инструментах, которые помогают работать эффективнее.
Подписывайтесь: @recura_tech
❤1
Как объединить словари в Python с помощью метода dict.update()
Самый очевидный путь – найти уже готовую функцию, то есть посмотреть на то, какие есть встроенные методы у словарей. Если вы исследуете класс словарей dict, вы найдете много различных методов. Один из них — метод update(), который можно использовать для «вливания» одного словаря в другой. Он нам и нужен!
Разъяснивший Python
Самый очевидный путь – найти уже готовую функцию, то есть посмотреть на то, какие есть встроенные методы у словарей. Если вы исследуете класс словарей dict, вы найдете много различных методов. Один из них — метод update(), который можно использовать для «вливания» одного словаря в другой. Он нам и нужен!
Разъяснивший Python
Как сделать запрос PUT
Нам часто требуется обновить существующие данные в API. Используя запрос PUT, мы можем обновить данные полностью. Это означает, что, когда мы делаем запрос PUT, он заменяет все старые данные новыми.
В запросе POST мы создали новый продукт с идентификатором 21. Давайте обновим старый продукт на новый, сделав запрос PUT к конечной точке products/<product_id>.
Разъяснивший Python
Нам часто требуется обновить существующие данные в API. Используя запрос PUT, мы можем обновить данные полностью. Это означает, что, когда мы делаем запрос PUT, он заменяет все старые данные новыми.
В запросе POST мы создали новый продукт с идентификатором 21. Давайте обновим старый продукт на новый, сделав запрос PUT к конечной точке products/<product_id>.
Разъяснивший Python
🤨1
Пример генератора данных из библиотеки Keras
Одно из типичных применений генераторов — это использование генератора данных в библиотеке Keras. Причина, по которой он полезен, заключается в том, что мы не хотим хранить все данные в памяти, а хотим создавать их на лету, когда это необходимо в процессе обучения. Дело в том, что в Keras модель нейронной сети обучается батчами, поэтому генератор должен выдавать строго определенные пакеты данных.
Разъяснивший Python
Одно из типичных применений генераторов — это использование генератора данных в библиотеке Keras. Причина, по которой он полезен, заключается в том, что мы не хотим хранить все данные в памяти, а хотим создавать их на лету, когда это необходимо в процессе обучения. Дело в том, что в Keras модель нейронной сети обучается батчами, поэтому генератор должен выдавать строго определенные пакеты данных.
Разъяснивший Python
Декораторы в Python
Декораторы — мощный инструмент в Python. Вы можете их использовать для тонкой настройки работы класса или функции. Декораторы можно считать функцией, которая применена к другой функции. Чтобы определить функцию-декоратор для декорируемой функции, используется знак @ и после него название функции. Из этого следует, что декоратор принимает в качестве аргумента функцию, которою он декорирует.
Рассмотрим функцию square_decorator(), которая в качестве аргумента принимает функцию и в результате также выдают функцию.
Разъяснивший Python
Декораторы — мощный инструмент в Python. Вы можете их использовать для тонкой настройки работы класса или функции. Декораторы можно считать функцией, которая применена к другой функции. Чтобы определить функцию-декоратор для декорируемой функции, используется знак @ и после него название функции. Из этого следует, что декоратор принимает в качестве аргумента функцию, которою он декорирует.
Рассмотрим функцию square_decorator(), которая в качестве аргумента принимает функцию и в результате также выдают функцию.
Разъяснивший Python
Контекст функций
Язык Python допускает применение вложенных функций, в которых вы можете определить внутреннюю функцию внутри внешней. В Python есть несколько замечательных свойств, связанных со вложенными функциями.
Разъяснивший Python
Язык Python допускает применение вложенных функций, в которых вы можете определить внутреннюю функцию внутри внешней. В Python есть несколько замечательных свойств, связанных со вложенными функциями.
Разъяснивший Python
Превращаем Python в кейлоггер за 5 строк!
Этот код предназначен только для образовательных целей! Не используйте его в незаконных целях.
Как это работает?
pynput.keyboard.Listener перехватывает нажатия клавиш.
log_key(key) записывает все нажатия в файл log.txt.
listener.join() запускает бесконечное слежение за клавиатурой.
Где это можно использовать?
Контроль собственных действий (например, восстановление случайно закрытого текста).
Создание горячих клавиш для своих приложений.
Отладка нажатий при тестировании программ.
Разъяснивший Python
Этот код предназначен только для образовательных целей! Не используйте его в незаконных целях.
Как это работает?
pynput.keyboard.Listener перехватывает нажатия клавиш.
log_key(key) записывает все нажатия в файл log.txt.
listener.join() запускает бесконечное слежение за клавиатурой.
Где это можно использовать?
Контроль собственных действий (например, восстановление случайно закрытого текста).
Создание горячих клавиш для своих приложений.
Отладка нажатий при тестировании программ.
Разъяснивший Python
Возвращение легенды: самый востребованный вебинар Зерокодера про Perplexity AI снова пройдёт в ноябре.
На бесплатном занятии ребята покажут, как:
– Собрать презентацию, визуал, игру и текст с помощью Perplexity;
– Экономить ресурсы, заменяя целую команду инструментов всего одним ИИ;
– Получать идеи для монетизации ИИ прямо в процессе работы;
– Настроить рабочие процессы с помощью Perplexity так, чтобы он реально ускорял решение задач.
Все участники получат готовый гайд с набором промптов, который сделает вашу работу и повседневные задачи проще и интереснее.
Бонус: в конце практикума расскажем, как получить годовую подписку Perplexity Pro бесплатно (обычная стоимость — $240).
P.S. Это специальный повтор вебинара от экспертов по Perplexity. Жмите на ссылку и успевайте зарегистрироваться!
На бесплатном занятии ребята покажут, как:
– Собрать презентацию, визуал, игру и текст с помощью Perplexity;
– Экономить ресурсы, заменяя целую команду инструментов всего одним ИИ;
– Получать идеи для монетизации ИИ прямо в процессе работы;
– Настроить рабочие процессы с помощью Perplexity так, чтобы он реально ускорял решение задач.
Все участники получат готовый гайд с набором промптов, который сделает вашу работу и повседневные задачи проще и интереснее.
Бонус: в конце практикума расскажем, как получить годовую подписку Perplexity Pro бесплатно (обычная стоимость — $240).
P.S. Это специальный повтор вебинара от экспертов по Perplexity. Жмите на ссылку и успевайте зарегистрироваться!
Zip
Функция zip() позволяет создавать итерируемый объект, состоящий из кортежей. Zip принимает в качестве аргумента несколько последовательностей (m1, m2,…, mn), в результате чего создается итерируемый объект, состоящий из i кортежей. В каждом кортеже содержится по одному элементу из каждого контейнера. Таким образом, i-й кортеж представляет собой(m1i, m2i,…, mni)
Разъяснивший Python
Функция zip() позволяет создавать итерируемый объект, состоящий из кортежей. Zip принимает в качестве аргумента несколько последовательностей (m1, m2,…, mn), в результате чего создается итерируемый объект, состоящий из i кортежей. В каждом кортеже содержится по одному элементу из каждого контейнера. Таким образом, i-й кортеж представляет собой(m1i, m2i,…, mni)
Разъяснивший Python
Enumerate
В традиционных языках программирования вам нужна переменная цикла для перебора различных значений контейнера. В Python это упростили: вы можете получить доступ к переменной цикла вместе со значением итерируемого объекта. Функция enumerate(x) возвращает две итерируемые переменные. Одна из них изменяется в диапазоне от 0 до len(x) - 1, а другая представляет собой элементы x.
Разъяснивший Python
В традиционных языках программирования вам нужна переменная цикла для перебора различных значений контейнера. В Python это упростили: вы можете получить доступ к переменной цикла вместе со значением итерируемого объекта. Функция enumerate(x) возвращает две итерируемые переменные. Одна из них изменяется в диапазоне от 0 до len(x) - 1, а другая представляет собой элементы x.
Разъяснивший Python
Как перевернуть список в Python с помощью срезов
Срезы работают аналогично функции range(), которую мы разобрали ранее.
Срез также включает в себе три параметра: start, stop и step.
Синтаксис выглядит следующим образом: [start:end:step].
Если вы хотите вывести все элементы, вы можете использовать один из двух следующих способов
Разъяснивший Python
Срезы работают аналогично функции range(), которую мы разобрали ранее.
Срез также включает в себе три параметра: start, stop и step.
Синтаксис выглядит следующим образом: [start:end:step].
Если вы хотите вывести все элементы, вы можете использовать один из двух следующих способов
Разъяснивший Python