這是我迄今為止嘗試計算 w 的所有可能值的方法。我知道我需要某種回圈,但我對 python 還是很陌生,所以我不確定要使用什么
m = arange(200, 1200, 0.1)
k = arange(1, 7, 0.1)
w = math.sqrt(k / m)
我想從給定的 m 和 k 的可能值中給我一個 w 的所有可能值的串列
uj5u.com熱心網友回復:
我認為您正在尋找以下內容(不使用 numpy - 只是純 python)
import math
m_lst = (200, 1200, 0.1)
k_lst = (1, 7, 0.1)
w_lst = []
for m in m_lst:
for k in k_lst:
w_lst.append(math.sqrt(k / m))
print(w_lst)
輸出
[0.07071067811865475, 0.18708286933869708, 0.022360679774997897, 0.02886751345948129, 0.07637626158259733, 0.00912870929175277, 3.1622776601683795, 8.366600265340756, 1.0]
uj5u.com熱心網友回復:
如果您嘗試純粹使用 numpy 來執行此操作,那么您可以執行以下操作:
import numpy as np
from numpy import arange
m = arange(200, 1200, 0.1)
k = arange(1, 7, 0.1)
w = np.sqrt(k[: np.newaxis] / m)
這k[: np.newaxis]是必要的,以便 numpy 能夠生成正確維度的結果,否則,將需要類似于其他答案所做的解決方案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/348734.html
