TypeError при инициализации 2d массива? - PullRequest
0 голосов
/ 09 июля 2019

Я хочу сделать 2d массив, который содержит нормализованные значения из другого 2d массива.Однако после следующих других уроков / предложений моя функция возвращает TypeError.

Я не думаю, что какие-либо переменные, которые я использую, являются типами, и я изменил имена переменных, но безрезультатно.

def normalize(oldArray): #makes all vectors a ratio of the largest magnitude vector 
maxMagnitude = 0
row, column = len(oldArray), len(oldArray[0]) #Gets the Height and Width of Array for conversion
normalized = [[0 for x in range(column)] for y in range[row]] #Initializes the return array as empty
for x in range(len(oldArray)): #searches for maximum magnitude
    magnitude = math.sqrt(oldArray[x][0] ^ 2 + (oldArray[x][1] ^ 2) + (oldArray[x][2] ^ 2))    
    if magnitude > maxMagnitude:
        maxMagnitude = magnitude
for x in range(len(oldArray)): #converts all values into ratio of maximum magnitude
    magnitude = math.sqrt(oldArray[x][0] ^ 2 + (oldArray[x][1] ^ 2) + (oldArray[x][2] ^ 2))    
    ratio = magnitude / maxMagnitude
    normalized[x][0] = ratio
    normalized[x][1] = ratio
    normalized[x][2] = ratio 
return normalized 

Сообщение об ошибке:

newArray = [[0 for x in range(c)] for y in range[r]] #Initializes the return array as empty TypeError: 'type' object is not subscriptable
...