Что выведет код?
def sub():
yield 1
yield 2
def main():
yield 0
yield from sub()
yield 3
g = main()
print(next(g), next(g), next(g), next(g))
Выберите правильный вариант
Anonymous Quiz
10%
1 2 0 3
11%
0 1 2 StopIteration
10%
TypeError
7%
0 2 1 3
62%
0 1 2 3
1%
Посмотреть результаты
Что выведет код?
from itertools import chain
a = [1, 2]
b = (x for x in [3, 4])
c = chain(a, b)
print(list(c))
Выберите правильный вариант
Anonymous Quiz
60%
[1, 2, 3, 4]
23%
[1, 2, [3, 4]]
9%
[3, 4]
3%
TypeError
0%
[1, 2]
5%
Посмотреть результаты
Что выведет код?
from itertools import cycle
c = cycle([10, 20])
out = []
for i, val in enumerate(c):
if i >= 3:
break
out.append(val)
print(out)
Выберите правильный вариант
Anonymous Quiz
26%
[10, 20, 10, 20]
14%
[10, 10, 10]
42%
[10, 20, 10]
12%
[10, 20]
3%
[20, 10, 20, 10]
3%
Посмотреть результаты
Что выведет код?
def sub():
for i in range(2):
yield i
def main():
yield -1
for x in sub():
yield x
yield 2
print(list(main()))
Выберите правильный вариант
Anonymous Quiz
6%
[0, 1, 2]
20%
[-1, [0, 1], 2]
63%
[-1, 0, 1, 2]
8%
[-1, 1, 2]
2%
[-1, 0, 2, 1]
2%
Посмотреть результаты
Что выведет код?
g = (x for x in range(2))
print(next(g), next(g), next(g, 99))
Выберите правильный вариант
Anonymous Quiz
14%
0 1 StopIteration
54%
0 1 99
10%
0 1 None
7%
0 2 99
10%
1 2 99
5%
Посмотреть результаты
Что выведет код?
from contextlib import contextmanager
@contextmanager
def simple_context():
print("enter")
yield
print("exit")
with simple_context():
print("inside")
Выберите правильный вариант
Anonymous Quiz
41%
enter inside exit
22%
enter exit inside
12%
inside enter exit
3%
inside enter exit exit
17%
enter inside
3%
Посмотреть результаты