170 похожих чатов

Привет. подскажите пж как работать с оперативной память в питоне

при использовании pandas для больших таблиц. такая ситуация: функция считывает фрейм большой, отрабатывает, затем идут еще ряд функций, которые тоже жрут память. пробовал del, но он не работает. как можно избавляться от мусора в процессе работы?

19 ответов

18 просмотров

import gc gc.collect() по памяти, мб где ошибся

Ω- Автор вопроса
Илья Власов
import gc gc.collect() по памяти, мб где ошибся

в сети так везде и пишут, но почему то не работает

Что за "мусор"?

Ω
в сети так везде и пишут, но почему то не работает

Ну с пандасом сложности есть, так как утекать что-то может внутри самого пандаса на сях. И сборщик питона ничем не поможет. Профилировщиком пройдись

Ω
в сети так везде и пишут, но почему то не работает

Тебе нужно, чтобы счетчик ссылок на датафрейм обнулился. К примеру, объяви его как локальную переменную функции и не возвращай.

Kirill Shikhalev
Зачем?

Чтобы коллектить гарбадж

Илья Власов
Чтобы коллектить гарбадж

То есть ты понимаешь, что твой совет сработает только для разрешения циклических ссылок?

Evgeniy Blinov
То есть ты понимаешь, что твой совет сработает тол...

Циклические ссылки питон сам разруливать умеет. Коллект нужен для того, чтобы принудительно вызвать удаление. Так гц раз в какое-то время проверяет счетчики

Илья Власов
Циклические ссылки питон сам разруливать умеет. Ко...

У тебя не циклическая ссылка и гц никакие счетчики не проверяет

Evgeniy Blinov
Питон сам? Как механизм называется?

Счётчик ссылок. Можешь посмотреть, там генерации 1, 2 , 3 поколения отслеживает. Если работал с профилировщиками, то они эту инфу выводят тоже

Илья Власов
Счётчик ссылок. Можешь посмотреть, там генерации 1...

Счетчик ссылок не работает с циклическими ссылками

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта