tA=[]
tC=[]
tG=[]
tT=[]
i=0
#this is the specific part of my script, A, T, G % C are 4 lists that consists from 10 indexes, each of which is a different number
for i in range(11):
A1=A[i]*3/100
C1=C[i]*3/100
G1=G[i]*3/100
T1=T[i]*3/100
tA.append(A1)
tC.append(C1)
tG.append(G1)
tT.append(T1)
i=i+1
我得到的错误是:
list index out of range
对于这一行:
A1=A[i]*3/100
我知道为什么我得到它,我只是不知道如何解决这个问题。 帮助
答案 0 :(得分:3)
因为range(11)
有11个元素 - 0到10 包含 ...只需使用range(10)
代替列表中的索引(0 - 9)。< / p>
答案 1 :(得分:0)
Python索引从0开始。
如果A有10个项目,A [10]崩溃。使用
min(len(A), len(B), len(C), len(T))
作为您的范围的参数,以确保您不超过其指数。
答案 2 :(得分:0)
你说你的列表包含十个条目,但你循环超过十一个。 range(11)
调用会返回一个包含0
到10
之间值的列表,换句话说是11个值。
请记住,在Python中,所有索引都基于零,即第一个索引为零,最后一个索引为(length - 1)。
更改为range(10)
。