関数に整数を渡そうとしています。何度も呼んでいるのでうまくいかないのではないでしょうか?たとえば、Alist という 1 つの関数で 2 次元行列を作成し、それを返します。2 番目の関数では、Alist を渡し、Alist から取得したい値の場所を指定してから返します。最後に (これまでのところ)、3 番目の関数が戻り値と Alist を要求します。Alist は正常に出力されますが、戻り値 (ノード) は 4 になるはずのときに 0 を出力しています。コードの先頭で宣言された node = 0 変数を使用していると思いますが、その理由はわかりません。
network.txt の最初の行は次のようになります: 0,2,4,1,6,0,
Alist = []
node = 0
file = ("F:/media/KINGSTON/Networking/network.txt")
def create_matrix(file):
with open('network.txt') as f:
Alist = []
for line in f:
part = []
for x in line.split(','):
part.append(int(x))
Alist.append(part)
return Alist
def start_node(Alist):
node = Alist[0][2]
print (node)
return node
#test neighbours to see if they can be used
def check_neighbours(node, Alist):
print (Alist)
print (node)
#check for neighbours. if we start at [0][0] we must look for [0][1]
#and [1][0]. Figure out how to add 1 to each cell to navigate across.
#running of code begins here
Alist = create_matrix(file)
start_node(Alist)
check_neighbours(node, Alist)