TypeError: liste des indices doivent être des entiers, pas de tuple lorsque vous essayez de modifier certains éléments d'une liste de tableaux

J'ai une liste de 2 par n tableaux de coordonnées x et y.

old: [array([[1, 2, 3], [4, 5, 6]]), array([[10, 20, 30], [40, 50, 60]])]

Je suis en train de décalage de l'axe des coordonnées, la deuxième ligne de chaque tableau, par une certaine valeur de la 'shift'. Cependant, lorsque j'essaie de le faire par la méthode ci-dessous, j'obtiens une erreur:

"TypeError: liste des indices doivent être des entiers, pas de tuple lorsque vous essayez de modifier certains éléments d'une liste de tableaux."

import pylab


    def shiftY(old,shift):
        new = list([])

        for i in arange(len(old)):
            y = old[i][1,:] + shift
            newItem = array([old[:,0],y])
            new.append(newItem)

        return new

    old = list()
    old.append(arr

ay([[1, 2, 3], [4, 5, 6]]))
old.append(array([[10,20,30],[40,50,60]]))
shift =3 
new=shiftY(old,shift)
print(new)

Traceback:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27_32bit\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 540, in runfile
    execfile(filename, namespace)
  File "C:/Users/tald574/testShifty.py", line 25, in <module>
    new=shiftY(old,shift)
  File "C:/Users/tald574/testShifty.py", line 15, in shiftY
    newItem = array([old[:,0],y])
TypeError: list indices must be integers, not tuple

Je ne vois pas ce que je fais de mal que newItem n'est même pas censé être une liste, il devrait être un tableau 2D. Vous en serais reconnaissant si quelqu'un peut me dire ce que je fais mal un comment résoudre le problème.

Grâce.

Edit:
Le résultat attendu de ce test serait,

new:[array([[1, 2, 3], [7, 8, 9]]), array([[10, 20, 30], [43, 53, 63]])]
  • Je pense qu'il y a un saut de ligne dans la ligne commençant par old.append(arr qui ne devraient pas y être
  • old[:,0] n'est pas de corriger la syntaxe de python. qu'est-ce que la sémantique de cette chose?
  • vous voulez probablement newItem = array(old[i][:,0]),y]
  • En python une liste est essentiellement un tableau(c/c++)
  • il y a des erreurs de syntaxe à tous sur ce code. tous les besoins de retravailler. Bonne question mérite d'être posée.
  • Pourriez-vous les gars être un peu plus précis w.r.t. les erreurs de syntaxe. Je n'ai pas d'erreurs de syntaxe lors de l'exécution du code et apprécie les non-critique règles de syntaxe que je ne sais pas. J'ai appris le python je sais que pour moi, que j'ai peut-être manqué de la syntaxe correcte des conférences.