如何在列表中存储值,然后相互比较
all_click = []
all_click_red = []
while True:
a = input('give a number: ')
b = input('give a second number: ')
if a == 1:
all_click.append(a)
if b == 1:
all_click_red.append(b)
if all_click_red[-1] and all_click[-1] == 1:
print('all good')
else:
print('false')
因为我收到这样的错误:
if all_click_red[-1] and all_click[-1] == 1:
IndexError: list index out of range
答案 0 :(得分:0)
原因是其中一个列表中可能没有值。
你可能想要这样的东西:
if len(all_click) > 0 and len(all_click_red) > 0 and all_click_red[-1] == 1 and all_click[-1] == 1:
print('all good')
else:
print('false')
在访问像这样的列表中的索引时,永远不会伤害检查索引安全性。
我还在all_click_red数字检查中添加了相等性。我假设那是你所追求的。抱歉,如果我误判了
答案 1 :(得分:0)
只有当它的值相等时才向列表中添加内容1.如果它不等于1,则列表为空,列表[-1]将超出范围,提高这个错误。