第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Python 中使用 for 在列表中附加浮點數(shù)

在 Python 中使用 for 在列表中附加浮點數(shù)

嗶嗶one 2022-10-11 10:11:06
我正在嘗試構(gòu)建一個函數(shù),將每個向量的 itens 相乘并返回一個帶有這些數(shù)字的向量,但是我在追加乘法時遇到了問題。例子:-輸入:vec1 = np.array([-2.0, -1.0, 0.0, 1.0, 2.0])vec2 = np.array([-16.2, 87.8, -7.199999999999999, -52.2, -12.2])list_mult(vec1,vec2)-輸出 :[ 32.4 -87.8  -0.  -52.2 -24.4]- 這是我的代碼和輸出錯誤:import numpy as npdef list_mult(v1,v2):    result = list()    for i in v1:         for j in v2:            result.append(v1[i] * v2[j])    return result輸出:      4     for i in v1:      5         for j in v2:----> 6             result.append(v1[i] * v2[j])      7     return resultTypeError: list indices must be integers or slices, not numpy.float64```
查看完整描述

1 回答

?
肥皂起泡泡

TA貢獻1829條經(jīng)驗 獲得超6個贊

您正在迭代元素,但在訪問時您將元素作為索引傳遞。所以你得到了錯誤。


更改以下行


 In [38]: import numpy as np

    ...:

    ...: def list_mult(v1,v2):

    ...:     result = list()

    ...:     for idx1,i in enumerate(v1):

    ...:         for idx2,j in enumerate(v2):

    ...:             if (idx1 == idx2):

    ...:                 result.append(i * j)

    ...:     return result

    ...:

    ...:


In [39]: list_mult(vec1,vec2)

Out[39]: [32.4, -87.8, -0.0, -52.2, -24.4]

更優(yōu)雅的解決方案是使用np.multiplynumpy 包的功能。


In [37]: np.multiply(vec1,vec2)

Out[37]: array([ 32.4, -87.8,  -0. , -52.2, -24.4])


查看完整回答
反對 回復 2022-10-11
  • 1 回答
  • 0 關(guān)注
  • 182 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號