gpt4 book ai didi

python - Python 中对象的字符串表示

转载 作者:太空宇宙 更新时间:2023-11-03 14:17:40 25 4
gpt4 key购买 nike

<分区>

所以在我目前用作引用的书 ( Problem Solving with Algorithms and Data Structres ) 中,这就是图形的实现方式。我在这里不明白的是 Vertex 类中的 __str__ 函数在这里究竟是如何工作的,以及我们为什么需要它。谁能解释一下?谢谢!

 class Vertex:
def __init__(self,key):
self.id = key
self.connectedTo = {}

def addNeighbor(self,nbr,weight=0):
self.connectedTo[nbr] = weight

def __str__(self):
return str(self.id) + ' connectedTo: ' + str([x.id for x in self.connectedTo])

def getConnections(self):
return self.connectedTo.keys()

def getId(self):
return self.id

def getWeight(self,nbr):
return self.connectedTo[nbr]




class Graph:
def __init__(self):
self.vertList = {}
self.numVertices = 0

def addVertex(self,key):
self.numVertices = self.numVertices + 1
newVertex = Vertex(key)
self.vertList[key] = newVertex
return newVertex

def getVertex(self,n):
if n in self.vertList:
return self.vertList[n]
else:
return None

def __contains__(self,n):
return n in self.vertList

def addEdge(self,f,t,cost=0):
if f not in self.vertList:
nv = self.addVertex(f)
if t not in self.vertList:
nv = self.addVertex(t)
self.vertList[f].addNeighbor(self.vertList[t], cost)

def getVertices(self):
return self.vertList.keys()

def __iter__(self):
return iter(self.vertList.values())

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com