了解しました。このプログラムを使用して、系統樹図で使用する名前と距離の両方を抽出するNewick形式のコードをスパースします。私の問題は、このコードブランチで、プログラムがnewickNode関数を読み取るときに、名前と距離を「node」変数に割り当て、それを「Node」クラスに戻して出力することですが、最初のノード「A」のみを印刷し、他の3つをスキップし
ます。newickNodeでforループを終了して、他の3つのノードを読み取り、それに応じて最初のノードで印刷する方法はありますか?
class Node:
def __init__(self, name, distance, parent=None):
self.name = name
self.distance = distance
self.children = []
self.parent = parent
def displayNode(self):
print "Name:",self.name,",Distance:",self.distance,",Children:",self.children,",Parent:",self.parent
def newickNode(newickString, parent=None):
String = newickString[1:-1].split(',')
for x in String:
splitString = x.split(':')
nodeName = splitString[0]
nodeDistance = float(splitString[1])
node = Node(nodeName, nodeDistance, parent)
return node
Node1 = newickNode('(A:0.1,B:0.2,C:0.3,D:0.4)')
Node1.displayNode()
ありがとう!