Python “行动”@&引用;在乘法向量中给出语法错误

Python “行动”@&引用;在乘法向量中给出语法错误,python,Python,当我尝试在Google Colab中使用此部件代码时: def costFunction(X, Y, theta): scalar=1; ''' Calcular la Least Square Cost Function. Devolver la funcion calculada. ''' X=np.insert(X.T, 0, np.ones(X.shape[1]), 1) theta=theta.T cost = 0.5 @

当我尝试在Google Colab中使用此部件代码时:

def costFunction(X, Y, theta):
    scalar=1;
    '''
    Calcular la Least Square Cost Function.
    Devolver la funcion calculada.
    '''
    X=np.insert(X.T, 0, np.ones(X.shape[1]), 1)
    theta=theta.T
    cost = 0.5 @ (X @ theta-Y.T).T@(X@theta-Y.T)+theta.T@scalar@theta
    return cost
给出了错误:

 >   File "<ipython-input-8-c78bf44930a0>", line 9
    >     cost = 0.5 @ (X @ theta-Y.T).T@(X@theta-Y.T)+theta.T@scalar@theta

               ^
SyntaxError: invalid syntax
>文件“”,第9行
>成本=0.5@(X@θ-Y.T).T@(X@theta-Y.T)+θ。T@scalar@西塔
^
SyntaxError:无效语法

运算符是矩阵乘法。0.5不是一个矩阵。你刚才是不是想做一个标量乘法?这是常规的
*
运算符。无法复制。该代码在cpython 3.8.6上没有语法错误,但是,尝试将矩阵乘法运算符与标量一起使用不会是语法错误-它可能是TypeError或其他类似的运行时错误。这似乎更像是在Python版本上运行的代码太旧,无法使用
@
操作符,尽管我不确定您如何在Colab上管理它。@jasonharper-我想知道类似的事情。自2015年发布python 3.5以来,矩阵乘法就一直存在。OP最好检查ipython版本,但它可能比这个版本更新。导入
sys
后,请执行
打印(sys.version)
,并将其发布在此处。