Редактировать : Решено.Спасибо за помощь, ребята, но похоже, что проблема заключалась в том, что список был перезаписан и преобразован в группу спрайтов, что сделало все манипуляции со списком бесполезными.
Я недавно начал программировать на python (всегда вызывает тревогуколокола), поэтому я прошу прощения, если способ, которым я закодировал вещи, немного страшен.Эта конкретная программа импортирует pygame (используется «движок»).
Я пытаюсь создать список, содержащий объекты / спрайты.Кажется, этого я достиг, однако у меня возникла проблема с удалением объекта из этого списка, когда он больше не нужен, поскольку, насколько я могу судить, у объекта нет определенного указателя.
Класс спрайта построен следующим образом:
class Point(pygame.sprite.Sprite):
def __init__(self,pos=(0,0)):
pygame.sprite.Sprite.__init__(self)
#Unimportant code
self.dead=False
print self
#This prints; "<Point sprite(in 0 groups)>"
def update(self):
if(self.dead):
#sprList_PointSet.remove(?)
pass
Объекты и список созданы;
sprList_PointSet=[]
sprList_PointSet+=[Point((50,90))]
sprList_PointSet+=[Point((65,110))]
# ...
print sprList_PointSet
#This prints; [<Point sprite(in 0 groups)>, <Point sprite(in 0 groups)>, ...]
Есть ли способ удалить экземпляр из списка, когда он больше не нужен, с помощью .remove (x) в случае, когда нет видимого индикатора памяти?Если нет / или / и кто-то может порекомендовать лучший способ сделать это.