Курс 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. Создание списков в Python
  3. Вывод баннеров
  4. Создание таблиц в терминале с PrettyTable
  5. Обработка ошибок ввода данных
  6. Библиотека itertools: объединение списков
  7. Декораторы в Python
  8. Именование столбцов в Python с pandas
  9. Очистка данных с помощью pandas
  10. Конкатенация строк в Python
  11. Создание новой даты в Python
  12. Встроенные функции Python
  13. Работа с модулем random
  14. Рекурсия для обращения строки
  15. Перемешивание списка с shuffle()
  16. Функция с **kwargs в Python
  17. Обход дочерних элементов BeautifulSoup
  18. Функции-генераторы в Python
  19. Слияние словарей в Python 3.9
  20. Декораторы в Python
  21. Работа с путями в Python
  22. split() без разделителя
  23. Форматирование данных с pprint
  24. Глобальные переменные в Python
  25. Логические значения в Python
  26. Разделение строки с регулярными выражениями
  27. Объединение списков с помощью zip
  28. Обработка исключений в Python
  29. Метод radd для пользовательских чисел
  30. Объединение словарей в Python
  31. Установка и использование Logzero
  32. Именованные срезы в Python
  33. Создание новых функций с помощью functools.partial
  34. Асинхронное программирование с asyncio
  35. Проверка запуска скрипта или импорта модуля
  36. Склеивание строк через метод join()
  37. Метод rmatmul для обратного матричного умножения
  38. Отладка в командной строке
  39. Преобразование данных в Python
  40. Удаление файлов в Python
  41. Обратный список чисел
  42. Python reversed() функция
  43. Карта бомбоубежищ в Москве и Питере
  44. Создание namedtuple списком полей

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