0
我試圖讓向量的加權總和(VECT的尺寸是可變的),以數據爲:未知維度的矢量加權和
vect[1] = [5., 6., 7.] mult[1][1] = "20"
vect[2] = [7., 8., 9.] mult[2][1] = "80"
......
我所尋找的是:
\sum(vect[i]*float(mult[i][1]))
但是,我無法得到。
對於一個具體的例子:
print(vect)
for i in range(2):
print(mult[i][1])
lat_alloy = [3]
for i in range(len(m)):
nvect[i] = vect[i]*float(mult[i][1])
lat_alloy[1] = sum(item[1] for item in nvect)
lat_alloy[2] = sum(item[2] for item in nvect)
lat_alloy[3] = sum(item[3] for item in nvect)
print(lat_alloy)
,我很早就與失敗:
[[286.65, 286.65, 286.65], [250.71, 250.71, 406.95]]
20
80
Traceback (most recent call last):
File "/usr/local/lib/python3.5/site-packages/ptbl/veggards.py", line 68, in entry_text
nvect[i] = vect[i]*float(mult[i][1])
TypeError: can't multiply sequence by non-int of type 'float'
我想獲得的是:
[286.65, 286.65, 286.65]*20
+ + +
[250.71, 250.71, 406.95]*80
請幫助。
你可以寫一個[最小的,完整的和可覈查的示例](https://stackoverflow.com/help/mcve)SH由於你需要什麼?很難從這個角度看出什麼答案就足夠了,因爲我不知道'nvect'是什麼,或者你爲什麼不得不使用'mult [i] [1]',或者什麼'm' ... – Useless