简单的问题:我想检索与NetworkX图中给定节点连接的所有节点,以创建子图。在下面的示例中,只需提取圆圈内的所有节点,给定其中任何一个的名称即可。
我尝试了以下递归函数,但由于该网络中只有91个节点,即使代码没有错误,也会达到Python的递归限制。
无论下面的代码是否有问题,实现我想要的最佳方法是什么?我将在各种大小的图上运行此代码,并且事先不知道最大递归深度。
无论下面的代码是否有问题,实现我想要的最佳方法是什么?我将在各种大小的图上运行此代码,并且事先不知道最大递归深度。
def fetch_connected_nodes(node, neighbors_list):
for neighbor in assembly.neighbors(node):
print(neighbor)
if len(assembly.neighbors(neighbor)) == 1:
neighbors_list.append(neighbor)
return neighbors_list
else:
neighbors_list.append(neighbor)
fetch_connected_nodes(neighbor, neighbors_list)
neighbors = []
starting_node = 'NODE_1_length_6578_cov_450.665_ID_16281'
connected_nodes = fetch_connected_nodes(starting_node, neighbors)