Курс Python → Проверка памяти объекта

Для того чтобы проверить использование памяти объектом в Python, можно воспользоваться функцией sys.getsizeof(). Например, если мы создадим огромный список с помощью функции range, то мы увидим, что его размер всего 48 байт. Это происходит потому, что функция range возвращает класс, который ведет себя как список, но на самом деле не хранит все числа в памяти, а генерирует их по мере необходимости.

Это позволяет сэкономить память, особенно если нам не нужно хранить все числа списка одновременно. В таком случае использование range может быть более эффективным с точки зрения использования памяти, чем создание и хранение актуального списка чисел.

Пример кода:


import sys

# Создание огромного списка с помощью range
huge_list = range(1000000)

# Проверка использования памяти объектом
print(sys.getsizeof(huge_list))

В данном примере мы создаем огромный список с помощью функции range, содержащий 1000000 чисел. Затем мы используем функцию sys.getsizeof() для проверки размера этого списка в байтах. Результат покажет нам, что даже при таком большом количестве элементов, использование памяти остается сравнительно невелико.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Автоматизация скриптов на AWS Lightsail.
  2. Раздувающийся словарь в Python
  3. Создание новых функций через partial
  4. Поиск шаблона в начале строки
  5. Нахождение разницы между списками в Python
  6. Ограничение итераций в Python
  7. Основы Python
  8. Генераторы словарей и множеств
  9. Проверка переменных окружения в Python
  10. Импорт модулей и пакетов в Python
  11. Логирование с Logzero
  12. Декоратор защиты анонимных пользователей
  13. Сравнение def и lambda-функций
  14. kwargs в Python
  15. Antigravity модуль
  16. Оператор «and» в Python
  17. Асинхронное программирование с asyncio
  18. Python Тесты и Гайды
  19. Обработка исключений в Python
  20. Работа с исключениями в Python
  21. Многопоточность и асинхронное программирование в Python
  22. Замыкания в Python
  23. Декораторы в Python
  24. Названия переменных
  25. Работа с CSV файлами
  26. Фильтрация данных в Python.
  27. Декоратор Property в Python
  28. Декораторы в Python
  29. Шаблоны и наследование в Flask
  30. Определение локальных переменных в Python
  31. Создание комплексных чисел
  32. Функция zip() в Python
  33. Метод rrshift для пользовательских объектов
  34. Модуль os: работа с файлами и папками
  35. Очистка данных в Python
  36. Создание класса очереди
  37. Сортировка в Python
  38. Удаление файлов и папок в Python
  39. Python Calendar Usage
  40. Структурирование именованных констант
  41. Форматирование строк в Python
  42. Хранение данных
  43. Управление памятью в Python
  44. Объединение списков в строку
  45. Секреты Python
  46. Форматирование строк в Python
  47. Определение имен функций
  48. Использование type hints

Marketello читают маркетологи из крутых компаний