Size: a a a

2019 December 17

SM

Serge Matveenko in SPb Python
HERETIQUE 🌚
Если я правильно понимаю вопрос, то поведение в __del__ определяется.
И никто не гарантирует, что он будет вызван
источник

SM

Serge Matveenko in SPb Python
Kristina Mironova
Доброе утро)  Подскажите пожалуйста,  как можно перехватить момент удаления ссылки на обьект при вызове оператора del ?
К какому методу обращаться?
Рекомендую пересмотреть архитектуру вашего приложения, чтобы избежать такой необходимости
источник

A

Alexander in SPb Python
Я пару лет назад тоже задавался этим вопросом) в питоне нет нормального деструктора объекта. Так что лучше действительно пересмотреть архитектуру
источник

SM

Serge Matveenko in SPb Python
Alexander
Я пару лет назад тоже задавался этим вопросом) в питоне нет нормального деструктора объекта. Так что лучше действительно пересмотреть архитектуру
ну, деструктор то есть, только он доступен только через C_API. а хука в рантайме Python гарантированного действительно нет
источник

IZ

Ilia Zviagin in SPb Python
Kristina Mironova
Доброе утро)  Подскажите пожалуйста,  как можно перехватить момент удаления ссылки на обьект при вызове оператора del ?
К какому методу обращаться?
Что, неужели из С++ в Python пришла?
источник

KM

Kristina Mironova in SPb Python
Ilia Zviagin
Что, неужели из С++ в Python пришла?
Дед Мороз проснулся?)
источник

IZ

Ilia Zviagin in SPb Python
Kristina Mironova
Дед Мороз проснулся?)
Да, подарки нужны?
пиши письмо...
источник

p

pragus in SPb Python
Ilia Zviagin
Что, неужели из С++ в Python пришла?
такое бывает, кмк. логику писать в цпп больно )
источник

IZ

Ilia Zviagin in SPb Python
pragus
такое бывает, кмк. логику писать в цпп больно )
А ты писал?
источник

KM

Kristina Mironova in SPb Python
Ilia Zviagin
Да, подарки нужны?
пиши письмо...
Дедушка, сделай, чтобы при вызове del instance этот instance удалялся из контейнера класса???
источник

p

pragus in SPb Python
Ilia Zviagin
А ты писал?
немного ) слишком много про детали и слишком мало про задачу
источник

IZ

Ilia Zviagin in SPb Python
Kristina Mironova
Дедушка, сделай, чтобы при вызове del instance этот instance удалялся из контейнера класса???
Ок, подарю тебе книжку Скота Меерса, More effective C++
источник

IZ

Ilia Zviagin in SPb Python
pragus
немного ) слишком много про детали и слишком мало про задачу
Значит, у тебя были плохие базовые классы.
И ты не пожелал их сделать лучше.
источник

SM

Serge Matveenko in SPb Python
Kristina Mironova
Дедушка, сделай, чтобы при вызове del instance этот instance удалялся из контейнера класса???
источник

SM

Serge Matveenko in SPb Python
источник

SM

Serge Matveenko in SPb Python
источник

KM

Kristina Mironova in SPb Python
спасибо, пересмотрю еще раз. На самом деле я не собиралась заниматься удалением объектов, я думала что мне просто удастся выкинуть объект из контейнера. Пусть он существует дальше, это не проблема. Но не знаю как связать одно с другим - то есть вызов del с удалением из контейнера.
источник

SM

Serge Matveenko in SPb Python
Kristina Mironova
спасибо, пересмотрю еще раз. На самом деле я не собиралась заниматься удалением объектов, я думала что мне просто удастся выкинуть объект из контейнера. Пусть он существует дальше, это не проблема. Но не знаю как связать одно с другим - то есть вызов del с удалением из контейнера.
вызывай метод, который будет делать нужную тебе работу (про контейнер), на del просто забей
источник

KM

Kristina Mironova in SPb Python
так del это триггер для того чтобы сработал этот метод..
источник

SM

Serge Matveenko in SPb Python
Kristina Mironova
так del это триггер для того чтобы сработал этот метод..
зачем? просто вызывай метод
источник