Python报错IndexError: string index out of range

python建立得分矩阵的时候报错
代码如下


sequence_1='GAAUUCAGUUA'
sequence_2='GGAUCGA'
len_1=len(sequence_1)
len_2=len(sequence_2)
print('序列一的长度是'+str(len_1)+'bases')
print(' ')
print('序列二的长度是'+str(len_2)+'bases')
# 创建得分矩阵,行数为第一条序列长度加一,列数为第二条序列长度加一
Score = np.zeros((len_1+1, len_2+1))
# 填得分矩阵
# 第一步:初始化第一行和第一列
for i in range(len_1 + 1):
    Score[i][0] = i
for j in range(len_2 + 1):
    Score[0][j] = j
# 第二步:动态规划的思想算每个格子的得分,每个格子需要考虑其左、上、左上的值,也可以说是考虑序列一、序列二引入空缺或直接匹配的最大值
for i in range(1, len_1 + 1):
    for j in range(1, len_2 + 1):
        if sequence_1[i]==sequence_2[j]:
            Score[i][j]=Score[i-1][j-1]
        else:
            Score[i][j]=min(Score[i-1][j-1],Score[i-1][j],Score[i][j-1])+1
print(Score)

img


请问应该如何修改呢

索引越界了
len_1 + 1是什么鬼操作,把+1删掉
前面和后面所有len+1的+1都应该删掉

img


超出字符串索引范围了,字符串长度为len_1、len_2,但后面18行和19行你在循环的时候设定的字符串长度范围是len_1 + 1、len_2+ 1