嗨,我刚刚开始使用python进行编码。这是我任务的最后一个问题,老实说,我对如何开始这个问题一无所知。 我需要编写一个程序来进行3维的基本矢量计算: 另外,点积和归一化。
我不知道此步骤后该怎么办,或者如果此步骤正确无误,请帮忙。
The expected result is:
Enter vector A:
1 3 2
Enter vector B:
2 3 0
A+B = [3, 6, 2]
A.B = 11
|A| = 3.74
|B| = 3.61
答案 0 :(得分:0)
使用numpy
:
import numpy as np
A = np.array([1,3,2])
B = np.array([2,3,0])
# sum
print(A+B) # -> array([3, 6, 2])
# dot product
print(np.dot(A)) # -> 11
#normalization
print(np.linalg.norm(A)) # -> 3.741...
print(np.linalg.norm(B)) # -> 3.605...
没有numpy
:
A = [1,3,2]
B = [2,3,0]
# sum
print([i+j for i,j in zip(A,B)])
# dot product
print(sum(i*j for i, j in zip(A,B)))
#normalization
print(sum(i**2 for i in A)**(0.5))
print(sum(i**2 for i in B)**(0.5))