for循环中的嵌套if语句不起作用

2024-10-01 09:29:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我在for循环中有一个嵌套的if语句,但是第一个if语句似乎没有进入for循环的其余部分

for i, x in enumerate(S[start:-1], start):
    if i > max(sma_period1, sma_period2, sma_period3):
        j = i-start
        
        if ma1[i] == x:
            w[j+1] = w[j]
            cash[j+1] = cash[j]

        if ma1[i] < x: 
            w[j+1] = cash[j]/x  + w[j]
            cash[j+1] = 0

        if ma1[i] > x:
            cash[j+1] = w[j]*x + cash[j]
            w[j+1] = 0

tf_strategy_ma1 = [a*b for a,b in zip(w,S[start:])]+ cash

对不起,如果这是一个非常基本的问题,我是新的编码和完全卡住。 谢谢你的帮助


Tags: inforiftfcash语句startmax
1条回答
网友
1楼 · 发布于 2024-10-01 09:29:56

针对以下情况的一些调试指针:

  1. 你需要了解考试的情况
  2. post中当前显示的max()语句在循环中不会每次都改变,可以在进入循环之前计算并分配一个变量
  3. 我会这样做,打印该值,然后在每次迭代中打印I值。这将使您了解循环的行为

相关问题 更多 >