我有一個問題,我得到以下代碼:
import numpy as np
a= [1,2,3,0,0,6,7,8,0,0,9,10,0,0]
a = np.array(a)
b=[]
c =[]
for i in a:
if i > 0.1:
b.append (0.04)
else:
c.append (0.04)
當我運行這個時,我得到
b = [0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04]
c = [0.04, 0.04, 0.04, 0.04, 0.04, 0.04]
但我真正想要的是
b = [0.12, 0.12, 0.08]
c = [0.08, 0.08, 0.08]
因此,在 b 中,需要對 0.04 的值求和,直到達到 a<0.1,然后需要創建一個新元素,直到 a>0.1。這需要重復整個 a 達到。對于 c 也是一樣。
有人能幫助我嗎。
uj5u.com熱心網友回復:
您每次都在 b 和 c 陣列中追加。您需要將 0.04 添加到該索引,直到滿足您的條件。
import numpy as np
a= [1,2,3,0,0,6,7,8,0,0,9,10,0,0]
a = np.array(a)
b=[]
c =[]
value1 = 0
value2 = 0
index = 0;
for i in a:
if i > 0.1:
value1 = 0.04
if (value2>0):
c.append(value2)
value2=0
else:
value2 = 0.04
if (value1 > 0):
b.append(value1)
value1=0
if value1 > 0 and index==(len(a) -1):
b.append(value1)
if value2 > 0 and index == (len(a) - 1):
c.append(value2)
index =1
print(b)
print(c)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/448681.html
