我想這應該很簡單。代碼的第一部分是初始化變數。我的問題是 while 回圈。如果條件滿足j == len(time),我需要退出 WHILE 回圈和 FOR 回圈。但問題是一旦條件為真,while 回圈就會再次迭代;因此,時間超出索引。
import numpy as np
# Variables to initialize the problem
timeframe = 25
dt=0.025
dat=[(0, 5)]
dat.append((timeframe,dat[len(dat)-1][-1]))
time = np.arange(dat[0][0],dat[-1][0] dt,dt)
dat_discretized = np.zeros(len(time))
#While inside a for loop
j=0
for i in range(len(dat)):
while dat[i][0] <= time[j] <= dat[i 1][0]:
dat_discretized[j] = dat[i][1]
j = 1
print(j)
if j == len(time):
break
如何在不重新檢查 while 條件的情況下存在 while 回圈?
uj5u.com熱心網友回復:
for i in range(len(dat)):
breakFor=false
while dat[i][0] <= time[j] <= dat[i 1][0]:
dat_discretized[j] = dat[i][1]
j = 1
print(j)
if j == len(time):
breakFor=true
break
if breakFor:
break
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/396684.html
上一篇:在KDB /Q中回圈以分配一定數量的具有不規則名稱和引數的變數
下一篇:比較串列的所有元素
