我在for循环中有一个try和except语句。我正在查看存储在本身可能存储在defaultdict中的(也许是复杂的)列表中的数据。我期望IndexErrors,但是当它们发生时,我根本不需要比较任何数据,因此我想忽略该错误。这是我当前的代码:
for key, list_item in defdict.iteritems():
if len(list_item) == 2:
if len(list_item[0][1]) > 1 or len(list_item[1][1]) > 1:
compare00,compare01=[],[]
if another_list.__contains__(list_item[0][0]):
try:
for item in defdict.iteritems():
if item[1][0][0] == list_item[0][0]:
compare00.append(compare_function(item))
except IndexError:
continue
if another_list.__contains__(list_item[1][0]):
try:
for item in defdict.iteritems():
if item[1][1][0] == list_item[1][0]:
compare10.append(compare_function(item))
except IndexError:
continue
print compare00,compare10
#etc
此后,我意识到continue
语句是不正确的。我的if
语句不需要相互排斥,因此,转到循环的下一个迭代(continue
)或离开循环(break
)都是不合适的。没有except IndexError:
的空白continue
,即即是不正确的语法。我应该如何忽略该错误?
谢谢,
戴夫。