Python 为什么我的零列表会导致IndexError?
我在Python 为什么我的零列表会导致IndexError?,python,error-handling,indexoutofrangeexception,Python,Error Handling,Indexoutofrangeexception,我在发生[j]=0时出错。我真的不明白我的代码中这个错误的起源,因为它是长度dna,因为我在代码的顶部附加了len(dna)零,然后在嵌套循环中给同一个列表occurrence赋值,其中j只能达到len(dna)的值 在类型的第一次迭代结束时,调用发生.clear(),这将导致发生为空列表。然后,当您在第二次迭代中尝试访问occurrence[j]时,会抛出一个索引器,因为列表是空的 我想您应该在for I in types循环中初始化列表,例如: for i in types: occ
发生[j]=0
时出错。我真的不明白我的代码中这个错误的起源,因为它是长度dna,因为我在代码的顶部附加了len(dna)
零,然后在嵌套循环中给同一个列表occurrence
赋值,其中j
只能达到len(dna)
的值
在
类型
的第一次迭代结束时,调用发生.clear()
,这将导致发生
为空列表。然后,当您在第二次迭代中尝试访问occurrence[j]
时,会抛出一个索引器,因为列表是空的
我想您应该在for I in types
循环中初始化列表,例如:
for i in types:
occurence = [0] * len(dna)
for j in range(len(dna)):
...
这样,您就不需要在列表上调用clear
方法,因为它将在每次迭代中重新定义为一个零列表
for i in types:
occurence = [0] * len(dna)
for j in range(len(dna)):
...