Курс 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. Перехват исключений в Python
  2. Настройка Cron
  3. Динамические маршруты во Flask
  4. Блок try…finally в Python
  5. Удаление дубликатов из списка с помощью dict.fromkeys
  6. Переменные в Python
  7. Использование *args
  8. Переименование файлов в Python
  9. Печать месячного календаря
  10. Enum в Python
  11. Проблемы с dict в Python
  12. Работа с изменяемыми коллекциями
  13. Поиск с библиотекой Google
  14. Метод get() в Python
  15. Создание объекта времени
  16. Функции all() и any() в Python
  17. Работа с IP-адресами в Python
  18. Список и кортеж в Python
  19. Оператор is в Python
  20. Методы __repr__ и __str__ в Python
  21. Упрощенный вывод данных в Python
  22. Списковый компрехеншен.
  23. Создание инструмента обнаружения плагиата
  24. None в Python: использование и особенности
  25. Применение функции к каждому элементу списка
  26. Установка Python3.7 и PIP
  27. Concrete Paths в Python
  28. Конвертация коллекций в Python.
  29. Работа с zip()
  30. Создание виртуальной среды
  31. Определение наиболее частого элемента с помощью collections.Counter
  32. Удаление специальных символов
  33. Создание итерируемых объектов
  34. Избегание циклических зависимостей классов в Python
  35. Измерение времени выполнения кода
  36. Конкатенация строк с методом join()
  37. Настройка нарезки списков
  38. Python Поверхностное Копирование
  39. Преобразование символов в нижний регистр
  40. Введение в Python
  41. Печать списка с помощью метода join
  42. Объединение словарей в Python
  43. Участие в LP стейкинге Waves
  44. Оператор in для проверки наличия элемента
  45. Логирование с Loguru
  46. Генерация случайных чисел в Python

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