Что за int в set()? Читайте, что написано в трейсе. И в чём смысл из списка, который возвращается функцией .split(), делать set, и снова list? Ну и вообще, Вы на каком языке пишете? С синтаксисом всё совсем плохо... Update списка, присвоение апдейта, return в цикле... Изучите матчасть всё-таки, не надо играть в угадайку.
UPD Вот решение, соответствующее всем условиям задачи:
def intersect(a1, a2):
common = []
i1, i2 = iter(a1), iter(a2)
try:
e1, e2 = next(i1), next(i2)
while True:
if e1 < e2:
e1 = next(i1)
elif e1 > e2:
e2 = next(i2)
else:
common.append(e1)
e1, e2 = next(i1), next(i2)
except StopIteration:
return common
intersect([1,2,3,4,5,10,12], [3,4,5,6,7,11,12]) # => [3, 4, 5, 12]