Найти - Пользователи
Полная версия: Как удалить элемент списка (мсье знает толк в извращениях
Начало » Python для новичков » Как удалить элемент списка (мсье знает толк в извращениях
1
Euseph
 my_list = list()
class My_class:
  def __init__(self):
    # здесь код
    my_list.append(self)
  def __del__(self):
    # собственно вопрос

Как переопределить деструктор таким образом, чтобы он удалял этот экземпляр класса из my_list?
Спасибо.
Rodegast
Зачем мсье списки?
 class My_class:
    my_instans = {}
    def __init___(self):
        self.my_instans[id(self)] = self
    def __del__(self):
        del self.my_instans[id(self)]
Если мсье будит писать вот такие глупости my_list = list(), то ему будит выделен персональный котёл в аду.
Euseph
Rodegast
Если мсье будит писать вот такие глупости my_list = list(), то ему будит выделен персональный котёл в аду.
Спасибо.
Я в принципе хотел бы пожить отдельно от тёщи хотя бы в аду, но похоже вы считаете, что my_list = list() - это что-то плохое, почему? Такой метод предлагает Луц, он мне нравится тем, что ++подобный. Гугл на сей вопрос не отвечает.
doza_and
Euseph
нравится тем, что ++подобный
Плюсоподоный это:
 Sometype a{123};
int b[5];

Питоноподобный
 a = Sometype(123)
b = []

Те в современном C++ инициализация идет с использованием фигурных скобок. С вашей записью ничего общего.
Если есть короткий способ зачем использовать длинный. А в плюсах для встроенных типов вообще невозможно указать конструктор. Т.е. тоже ни малейшей аналогии не вижу.

 >>> li =[1,2,"aaa",4,5]
>>> li.remove("aaa")
>>> li
[1, 2, 4, 5]

Изучайте документацию и… передавайте привет теще )))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB