y[15]
(因为15是
x[14]
y
只有15个元素,并且由于列表项从索引0开始,因此
list index out of range
.
zip
跳过
None
x = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
y = [None,None,None,None,None,10,20,30,40,50,60,70,80,90,100]
result = []
for val_x, val_y in zip(x, y):
if(val_y is None):
continue
result.append(val_x - val_y)
print(result)
输出:
[-4, -13, -22, -31, -40, -49, -58, -67, -76, -85]
或者作为列表理解:
result = [ (val_x - val_y) for val_x, val_y in zip(x, y) if (val_y is not None) ]