-4
저는 Dijkstra의 알고리즘을 파이썬으로 구현하고 있는데, 목록에서 객체의 인스턴스를 어떻게 제거 할 수 있을지 궁금합니다. 다음은 내 코드에서 "list.remove (x) : x not in list"오류가있는 부분입니다. 해당 항목이 제거 싶어 무엇이든 동일입니다python으로 목록에서 객체의 인스턴스를 제거하는 방법은 무엇입니까?
class Vertex:
def __init__(self, id, name):
self.id = id
self.name = name
self.minDistance = float("inf")
self.previousVertex = None
self.edges = []
def computePath(self, sourceId):
for i in self.vertexes:
if i.id == sourceId:
startVertex = i
startVertex.minDistance=0
break
else:
continue
unvisited = []
for vertex in self.vertexes:
unvisited.append(vertex)
while len(unvisited)!=0:
self.visited.append(startVertex)
unvisited.remove(startVertex)
루프에서 계속해서 'startVertex'를 계속 제거하려고합니다. – user2357112
또한'pop()'은 목록에서 물건을 제거하는 좋은 기능입니다. – MooingRawr
@MooingRawr 그래서'.remove'를합니다 –