База ответов ИНТУИТ

Язык программирования Python

<<- Назад к вопросам

Имеется следующий генератор для слияния двух отсортированных последовательностей:
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]) неприменимо к итераторам(Верный ответ)
генератор будет портить переданные ему списки
ошибок нет
длина итератора в общем случае неизвестна: ошибка в строке с условием цикла(Верный ответ)
Похожие вопросы
Имеется следующий генератор для слияния двух отсортированных последовательностей:
def merge(a1, a2): a1 = list(a1) a2 = list(a2) while a1 or a2:   if a1 and (not a2 or a1[0] < a2[0]):     r = a1   else:     r = a2   yield r[0]   del r[0]
Какие ошибки или особенности имеет эта программа?
К каким из приведенных ниже выражений можно применить функцию iter() для получения итератора?
Дана функция-генератор:
def ggg(s):  for i in range(0, len(s)-1, 2):    yield s[i], s[i+1]
Какие из перечисленных ниже способов ее использования для вывода значений правильные (в Python 2.4)?
Какие функции Python 2.4 позволяют организовать обработку сразу двух и более последовательностей?
Имеется следующий массив:
b = array([[1, 2], [0, 1]])
Какие из приведенных ниже операций получения среза вызовут ошибку?
Имеется определение класса:
class CL(object):  def __init__(self, color):    self.color = color  def __str__(self):    return self.colorc = CL("#ff00ff")
Какие из следующих примеров не содержат ошибки?
Какие из получаемых в следующем фрагменте кода объектов являются итераторами?
def gen(N):  for i in xrange(N):    yield ilst = [1, 2, 3, 4]xr = xrange(12)g = gen(10)en = enumerate(lst)
Имеется определение класса:
class CL(object):  def set_color(self, value): self.__color = value  def del_color(self): del self.__color  color = property(lambda self: self.__color,                   set_color, del_color, "Color property.")c = CL()
Какие из следующих примеров содержат ошибки?
Аналогом какой функции является функция x?
def x(a, b):  for c in b:    yield a(*c)
Следующая программа считает, сколько процентов HTML-кода web-страницы занимают встроенные сценарии.
import urllib, reSITE = "http://mail.ru"doc = urllib.open(SITE).read()script_re = re.compile("(?i)(?m)(?s)(<script[^>]*>.+?</script>)")prc = sum([len(frag) for frag in script_re.findall(doc)]) / float(len(doc)) * 100print "%.0f%%" % prc
Какие ошибки допущены в этой программе?