看板 Python 關於我們 聯絡資訊
matlab那樣不只一行喔 試試這樣如何 import numpy as np: y=np.asarray([(3+2*i) for i in x]) 這算generator嗎? ※ 引述《popo14777 (草草)》之銘言: : 各位大大好 : 小弟想問利用迴圈的方式,把運算的資料存入一個陣列,且陣列要numpy array的格式 : 範例如下 : import numpy as np : y=[] : x=[3.5, 8.2, 5.4, 2.3, 4.7] : for i in range(0,len(x)): : y+=[3+2*x[i]] : 但我的y是list,並不是我要的numpy array格式 : 後面在輸入以下這一行指令,終於變成我要的numpy array格式 : y = np.reshape(y,(len(y),1)) : 想請問有沒有其它方法,可以像Matlab語法一樣,只利用一行就可以解決的? : Matlab範例如下 : x=[3.5, 8.2, 5.4, 2.3, 4.7] : for i=1:length(x) : y(i,1)=3+2*x(i); : end : 以上是小弟的問題,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 129.171.112.28 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1495116749.A.54F.html ※ 編輯: fischcheng (129.171.112.28), 05/18/2017 22:14:20
uranusjr: > 這算 generator 嗎 不算, 這是 list comprehension 05/18 22:16
fischcheng: true, 謝樓上大大。還有很多東西得學 05/18 22:18
popo14777: 謝謝f大大,真的一行就解決了!! 05/18 22:48