python:为什么这段代码不起作用?(无效语法)

python:为什么这段代码不起作用?(无效语法),python,numpy,Python,Numpy,嗨,我正在学习python,我不知道为什么这段代码不起作用 你能帮我吗?谢谢有三个错误。首先,print是Python3中的一个函数,而不是一个语句,因此需要使用括号。第二个问题是,使用A*B时,您试图将常规Python列表相乘,但您无法做到这一点。另外,A+B也可以工作,但是它连接列表而不是添加它们的元素,这可能不是您想要的。你应该使用这些定义 A = np.array([2, 1, -1]) B = np.array([1, -1, 2]) 第三个问题是,在第三部分中,您试图将不兼容维度的

嗨,我正在学习python,我不知道为什么这段代码不起作用


你能帮我吗?谢谢

有三个错误。首先,
print
是Python3中的一个函数,而不是一个语句,因此需要使用括号。第二个问题是,使用
A*B
时,您试图将常规Python列表相乘,但您无法做到这一点。另外,
A+B
也可以工作,但是它连接列表而不是添加它们的元素,这可能不是您想要的。你应该使用这些定义

A = np.array([2, 1, -1])
B = np.array([1, -1, 2])
第三个问题是,在第三部分中,您试图将不兼容维度的矩阵相乘

顺便说一下,
np.matrix
类已被弃用,因此您不应该使用它

import numpy as np
A=[2,1,-1]
B=[1,-1,2]
print(A+B)
print(np.cross(A,B)) #AXB
print(np.dot(A,B)) 
A=np.array([2,1,-1])
B=np.array([1,-1,2])
print(A+B)
print (np.cross(A,B)) #AXB
print (np.dot(A,B)) # AB
print (A*B)
A=np.matrix([2,1,-1])
B=np.matrix([1,-1,2])
print(A+B)
print (np.cross(A,B))

第6行和第7行中省略了必要的括号:
print np.cross(A,B)
应该是
print(np.cross(A,B))
。您是否正在使用Python 2的学习资料?如果是这样,请放弃。错误在哪里?展示有用的指纹。不要只是显示代码和寻求一般帮助!不,它不起作用如果添加括号不起作用,请添加新的代码和错误哦,它起作用了,其他事情看起来都不对谢谢你的完美答案。这很有帮助。再次感谢你