Вариант 2024467038.
Имеется следующий генератор для слияния двух отсортированных последовательностей:
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]
Какие ошибки или особенности имеет эта программа?
Что можно узнать с помощью регулярного выражения r'([01]+)\1\1'?
Класс имеет методы «__iter__()» и «next()».
О чем это говорит и как пользоваться этим методом?
class A: #... def __iter__(self): #... def next(self): #... a = A(1, 2, 3)
Из какого модуля будет работать функция split() в следующем примере:
from sre import * from string import * split('a', 'b')
Карринг — это...
Что будет получено в результате вычисления следующего выражения:
0 < [1, 4], [1] < 3
Какого типа значение получится в результате вычисления следующего выражения:
(" ", )
Какую роль играет xx в следующей Python-программе
def xx(func): class X(object): pass setattr(X, func.__name__, func) return X
Что будет выведено в результате выполнения сопоставления с регулярным выражением?
import re m = re.match("(?P<a>A*?)(?:B+)(?P<b>B+?)(?P<c>C??)", "AAAABBBBC") print(m.groupdict())
Сколько элементов будет содержать список L после выполнения следующего кода:
L = [] L.append([1,2,3]) L = L*2