Имеется следующий генератор для слияния двух отсортированных последовательностей:def merge(a1, a2): i1 = iter(a1) i2 = iter(a2) while i1 or i2: if i1 and (not i2 or i1[0] < i2[0]): r = i1 else: r = i2 yield r.next()
Какие ошибки или особенности имеет эта программа?
(Ответ считается верным, если отмечены все правильные варианты ответов.)
Варианты ответа
индексирование (i1[0], i2[0]) неприменимо к итераторам(Верный ответ)
генератор будет портить переданные ему списки
ошибок нет
длина итератора в общем случае неизвестна: ошибка в строке с условием цикла(Верный ответ)