Измените функцию на:
def sub_code_stop(a):
for cc in sub_change:
if a == cc[1]:
return cc[2]
return 0
Ваш предыдущий код сравнивался только с первым элементом sub_change
.
Если второй элемент каждого подсписка в sub_change
были уникальными, вы могли бы сделать:
sub_change = [[0, '150', 'aaa'], [0, '151', 'ccc'],
[0, '152', 'bbb'], [0, '153', 'ddd']]
sub_dict = {b:c for Ellipsis,b,c in sub_change}
lis = [['150', '151'], ['152', '153']]
for i in lis:
print(sub_dict.get(i[0],0))