python 索引越界

说我list index out of range
我的列表R和列表PE都有28个值
问题出在哪里了?应该如何解决?谢谢大家

#三水源划分
FR = [0.5]
S = [0]
AU = []
RS_3 = []
RI_3 = []
RG_3 = []
for i in range(0,28):
    FR.append(round(R[i] / PE[i],1))
    AU.append(round(Smm * (1 - pow(1 - S[i] * FR[i] / 0.5 / Sm, 1 / (1 + EX))),1))
#计算RS
    if PE[i] > 0:
        if PE[i] + AU[i] < Smm:
            RS_3.append(round(FR[i] * (PE[i] + S[i] * FR[i] / 0.5 - Sm + Sm * pow(1 - (PE[i] + AU[i]) / Smm, EX + 1)),1))
        else:
            RS_3.append(round(FR[i] * (PE[i] + S[i] * FR[i] / 0.5 - Sm),1))
    else:
        RS_3.append(round(0,1))

代码中使用的range(0, 28)会遍历索引0到27,所以当你尝试访问索引28的时候,就会出现"list index out of range"错误,改成range(0,27)

应该是0-27

S = [0]
S[i]越界了