Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么我的零列表会导致IndexError?_Python_Error Handling_Indexoutofrangeexception - Fatal编程技术网

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)):
        ...