PythonとNumpyの以下のプログラムに関する質問です。

import numpy as np

total = np.array([0,0,0])

total_list = []

array_list = [np.array([0,0,0]), np.array([1,2,3]), np.array([4,5,6])]

for array in array_list:

    total += array

    total_list.append(total)

print total_list

単純に、array_listの要素を前から足し込んだものを、
total_listにappendするだけです。

本来ならば、
[array([0, 0, 0]), array([1, 2, 3]), array([5, 7, 9])]
という出力になると思うのですが、
[array([5, 7, 9]), array([5, 7, 9]), array([5, 7, 9])]
と出力されてしまいます。

すごく初歩的なのかもしれませんが、このバグが取れません。
申し訳ありませんが、よろしくお願いします。