После исправления проблемы с отступом, похоже, это работает без проблем:
class connection:
def __init__(self):
self.value = 0
self.weight = 0
self.network_output_index = 0
def connect(self, network_instance):
network_instance.output_array[self.network_output_index] = self.value * self.weight
class network:
def __init__(self):
self.output_array = [0,0,0,0]
c = connection()
c.value = 5
c.weight = 2
n = network()
c.connect(n)
print(n.output_array)
[10, 0, 0, 0]