파이썬의 목록에서 객체의 인스턴스를 제거하는 방법은 무엇입니까?

아몬드 우유

파이썬에서 Dijkstra의 알고리즘을 구현하는 중이며 목록에서 개체의 인스턴스를 제거하는 방법이 궁금합니다. 다음은 "list.remove (x) : x not in list"오류가 발생하는 코드의 일부입니다.

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)
Martijn Pieters

list.remove() 목록에서 제거하려는 항목과 동일한 항목이있는 첫 번째 항목을 제거합니다.

즉, 알고리즘은 다음을 수행하는 것입니다.

def remove(self, item_to_remove):
    for index, item in enumerate(self):
        if item == item_to_remove:
            del self[index]
            return
    raise ValueError('list.remove(x): x not in list')

트릭은 ==동등성 테스트를 통과하는 것입니다. 이것은 __eq__방법 으로 수행됩니다 . 기본 구현은 반환하는 것입니다 True두 항목이 때 하나의 동일한 개체를 , 그래서 item is item_to_remove사실이다.

Vertex클래스에 대한 사용자 지정 메서드를 만들 수 있습니다 .

def __eq__(self, other):
    if not isinstance(other, Vertex):
        return NotImplemented
    return self.id == other.id  # refine as needed

Vertex인스턴스가 같은지 결정해야합니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

파이썬에서 클래스를 인스턴스화하는 객체의 유형은 무엇입니까?

분류에서Dev

파이썬 목록의 다른 행에서 객체를 추가하는 방법은 무엇입니까?

분류에서Dev

파이썬 목록의 문자열에서 큰 따옴표를 제거하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 목록의 요소에서 하위 문자열의 인스턴스를 계산하는 방법은 무엇입니까?

분류에서Dev

mongoDB에서 객체 내부의 객체를 삭제하는 방법은 무엇입니까? 파이썬

분류에서Dev

클래스의 인스턴스를 JavaScript 객체에 추가하는 방법은 무엇입니까?

분류에서Dev

Java에서 다차원 객체의 인스턴스를 식별하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 다른 인스턴스의 클래스 이름을 사용하여 인스턴스를 만드는 방법은 무엇입니까?

분류에서Dev

캡처 된 인수 / 파이썬 인스턴스 메서드 객체의 클로저에 액세스하는 방법은 무엇입니까?

분류에서Dev

파이썬 클래스에서 인스턴스화 된 객체 목록을 반복하는 방법은 무엇입니까?

분류에서Dev

파이썬의 문자열에서 전체 단어를 제거하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 텍스트 파일의 목록을 사용하는 방법은 무엇입니까?

분류에서Dev

조건이 충족되면 목록 내에서 개체의 인스턴스를 삭제하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 목록 내의 좌표에 액세스하는 방법은 무엇입니까?

분류에서Dev

파이썬의 사전 요소 목록에서 사전에 액세스하는 방법은 무엇입니까?

분류에서Dev

파이썬 3에서 바이트 객체의 인코딩을 변경하는 방법은 무엇입니까?

분류에서Dev

파이썬 인터프리터의 두 인스턴스간에 통신하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 하나의 값 nside 중첩 목록을 제거하는 방법은 무엇입니까?

분류에서Dev

JavaScript에서 클래스 객체의 참조를 제거하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 텍스트 파일의 목록을 읽는 방법은 무엇입니까?

분류에서Dev

파이썬에서 한 번에 파생 클래스를 정의하고 인스턴스화하는 방법은 무엇입니까?

분류에서Dev

파이썬 3의 사전 목록에서 nan 값을 제거하는 방법은 무엇입니까?

분류에서Dev

laravel nova의 리소스 목록에서 모든 확인란을 제거하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 목록이 주어진 일련의 JSON 객체를 만드는 방법은 무엇입니까?

분류에서Dev

목록의 텍스트 파일 단어에서 줄을 제거하는 방법은 무엇입니까?

분류에서Dev

JavaScript의 배열에서 스플 라이스 목록을 제거하는 방법은 무엇입니까?

분류에서Dev

클래스 자체 내에서 클래스의 객체를 인스턴스화하는 방법은 무엇입니까?

분류에서Dev

드롭 다운 목록에서 텍스트의 일부를 제거하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 목록의 첫 번째 요소를 변경하지 않는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    파이썬에서 클래스를 인스턴스화하는 객체의 유형은 무엇입니까?

  2. 2

    파이썬 목록의 다른 행에서 객체를 추가하는 방법은 무엇입니까?

  3. 3

    파이썬 목록의 문자열에서 큰 따옴표를 제거하는 방법은 무엇입니까?

  4. 4

    파이썬에서 목록의 요소에서 하위 문자열의 인스턴스를 계산하는 방법은 무엇입니까?

  5. 5

    mongoDB에서 객체 내부의 객체를 삭제하는 방법은 무엇입니까? 파이썬

  6. 6

    클래스의 인스턴스를 JavaScript 객체에 추가하는 방법은 무엇입니까?

  7. 7

    Java에서 다차원 객체의 인스턴스를 식별하는 방법은 무엇입니까?

  8. 8

    파이썬에서 다른 인스턴스의 클래스 이름을 사용하여 인스턴스를 만드는 방법은 무엇입니까?

  9. 9

    캡처 된 인수 / 파이썬 인스턴스 메서드 객체의 클로저에 액세스하는 방법은 무엇입니까?

  10. 10

    파이썬 클래스에서 인스턴스화 된 객체 목록을 반복하는 방법은 무엇입니까?

  11. 11

    파이썬의 문자열에서 전체 단어를 제거하는 방법은 무엇입니까?

  12. 12

    파이썬에서 텍스트 파일의 목록을 사용하는 방법은 무엇입니까?

  13. 13

    조건이 충족되면 목록 내에서 개체의 인스턴스를 삭제하는 방법은 무엇입니까?

  14. 14

    파이썬에서 목록 내의 좌표에 액세스하는 방법은 무엇입니까?

  15. 15

    파이썬의 사전 요소 목록에서 사전에 액세스하는 방법은 무엇입니까?

  16. 16

    파이썬 3에서 바이트 객체의 인코딩을 변경하는 방법은 무엇입니까?

  17. 17

    파이썬 인터프리터의 두 인스턴스간에 통신하는 방법은 무엇입니까?

  18. 18

    파이썬에서 하나의 값 nside 중첩 목록을 제거하는 방법은 무엇입니까?

  19. 19

    JavaScript에서 클래스 객체의 참조를 제거하는 방법은 무엇입니까?

  20. 20

    파이썬에서 텍스트 파일의 목록을 읽는 방법은 무엇입니까?

  21. 21

    파이썬에서 한 번에 파생 클래스를 정의하고 인스턴스화하는 방법은 무엇입니까?

  22. 22

    파이썬 3의 사전 목록에서 nan 값을 제거하는 방법은 무엇입니까?

  23. 23

    laravel nova의 리소스 목록에서 모든 확인란을 제거하는 방법은 무엇입니까?

  24. 24

    파이썬에서 목록이 주어진 일련의 JSON 객체를 만드는 방법은 무엇입니까?

  25. 25

    목록의 텍스트 파일 단어에서 줄을 제거하는 방법은 무엇입니까?

  26. 26

    JavaScript의 배열에서 스플 라이스 목록을 제거하는 방법은 무엇입니까?

  27. 27

    클래스 자체 내에서 클래스의 객체를 인스턴스화하는 방법은 무엇입니까?

  28. 28

    드롭 다운 목록에서 텍스트의 일부를 제거하는 방법은 무엇입니까?

  29. 29

    파이썬에서 목록의 첫 번째 요소를 변경하지 않는 방법은 무엇입니까?

뜨겁다태그

보관