Python3.7.2:索引器:列表索引超出范围

2024-09-26 17:56:32 发布

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

这里我有以下代码:

 N = 5
    X = [3,-4,4,-3,4]
    Y = 0
    U = 0
    V = 0
    T=[]
    K=[]

    T.append(0)
    K.append(0)

    i = 1
    imin = i-1
    while (i<=N):
        T.append(T[i-1]+X[i])
        if T[i]>0:
            if T[i-1]>0:
                K.append(K[i-1])
            else: K.append(i)
        else:
            K.append(i)
        i += 1


    Y = 0
    U = 0
    V = 0
    print(T)
    while(i!=N):
        if T[i]>Y:
            Y = T[i]
            U = K[i]
            V = i
        i+=1

问题是,由于indexeror,代码不能传递t.append(t[i-1]+X[i])行。 例如,在代码的开头,T[i-1]是T[0],它已经被定义为0。X[0]也被定义为3。 那有什么问题

谢谢所有帮助我的人


Tags: 代码if定义elseprintappendwhileindexeror
2条回答

将行while (i<=N):更改为while (i<N):,错误将不再发生。但是,我不确定这是否提供了预期的结果,因为您还没有指定要执行的操作

循环一直到i=5X的最后一个有效元素是X[4]X[5]是导致IndexError升高的原因

相关问题 更多 >

    热门问题