我正在尝试检查某些元素是否在列表中,并执行数字更新,但我一直收到错误(如下)。
"if h2output[1] not in h1output == True or h2output[2] not in h1output == True:
IndexError: list index out of range"
doublewin = 0
h1output = []
h2output = []
h3output = []
v1output = []
v2output = []
v3output = []
d1output = []
d2output = []
for i in h1:
if i not in h1output:
h1output.append(i)
if len(h1output) == 2:
doublewin += 1
for i in h2:
if i not in h2output:
h2output.append(i)
if len(h2output) == 2:
if h2output[1] not in h1output == True or h2output[2] not in h1output == True:
doublewin += 1
答案 0 :(得分:0)
作为len(h2output)==2
,它只有2个位置,在python中从零开始,因此h2output[2]
超出范围,索引必须是0
或1
答案 1 :(得分:0)
您在h2output[1]
和h2output[2]
中拥有硬编码索引。其中任何一个都导致了这个问题。请检查列表的大小。
在if条件下删除真正的布尔值,因为它是不必要的。