Курс 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. Отладчик pdb: начало работы
  2. Измерение времени выполнения кода
  3. Оператор += в Python
  4. ROT13 Шифр Цезаря в Python
  5. Функция sleep() в Python
  6. Подсчет элементов с помощью Counter из collections
  7. Множественное назначение в Python
  8. Метод lt для сортировки объектов
  9. Оператор in и not in в Python
  10. Удаление символов новой строки в Python.
  11. Проверка типа данных
  12. Поиск наиболее частого элемента списке
  13. Проверка подстроки в строке с помощью in
  14. Использование двоеточия в Python
  15. Анализ кода — Python
  16. Логирование в Python
  17. Отладка в Python
  18. Сортировка списка по индексам
  19. Перевод текста с Python Translator
  20. Функция format() в Python
  21. Генераторы в Python
  22. split() без разделителя
  23. Работа с итераторами в Python
  24. Наиболее частотные элементы с помощью Counter
  25. Метод __ixor__ для побитового исключающего ИЛИ
  26. Объединение словарей в Python 3.5+
  27. Нахождение отличий в списках
  28. Использование функции enumerate()
  29. Лямбда-функции в defaultdict
  30. Создание директории в Python
  31. Отслеживание прогресса с tqdm
  32. Анонимные функции в Python
  33. Функции any() и all() в Python
  34. Принципы Zen of Python
  35. Объединение списков с помощью zip
  36. Удаление файлов с shutil.os.remove()
  37. Работа с Enum в Python3.
  38. Базовые объекты Python
  39. Метод join для наборов
  40. Закрытие файла в Python
  41. Блок try…finally в Python
  42. Применение функции к списку

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