Выберите правильный вариант
Anonymous Quiz
5%
0
29%
6
44%
12
9%
TypeError
7%
RuntimeError
6%
Посмотреть результаты
Что выведет код?
outer = (x for x in range(3))
inner = (y * 10 for y in outer if y % 2 == 0)
print(list(inner))
print(list(outer))
Выберите правильный вариант
Anonymous Quiz
7%
[0, 20] [1]
6%
[0, 20, 10] [2]
47%
[0, 20] [0, 1, 2]
4%
[] [0, 1, 2]
34%
[0, 20] []
2%
Посмотреть результаты
Что выведет код?
def gen1():
yield from [1, 2]
yield 3
print(list(gen1()))
Выберите правильный вариант
Anonymous Quiz
37%
[1, 2, 3]
10%
[1, [2], 3]
26%
[[1, 2], 3]
13%
[1, 2]
4%
TypeError
9%
Посмотреть результаты
Что выведет код?
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
9%
1 2 0 3
12%
0 1 2 StopIteration
9%
TypeError
8%
0 2 1 3
60%
0 1 2 3
3%
Посмотреть результаты
Что выведет код?
from itertools import chain
a = [1, 2]
b = (x for x in [3, 4])
c = chain(a, b)
print(list(c))
Выберите правильный вариант
Anonymous Quiz
58%
[1, 2, 3, 4]
23%
[1, 2, [3, 4]]
8%
[3, 4]
5%
TypeError
0%
[1, 2]
6%
Посмотреть результаты
Что выведет код?
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
25%
[10, 20, 10, 20]
12%
[10, 10, 10]
41%
[10, 20, 10]
15%
[10, 20]
2%
[20, 10, 20, 10]
5%
Посмотреть результаты
Что выведет код?
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
7%
[0, 1, 2]
18%
[-1, [0, 1], 2]
63%
[-1, 0, 1, 2]
8%
[-1, 1, 2]
1%
[-1, 0, 2, 1]
3%
Посмотреть результаты
Что выведет код?
g = (x for x in range(2))
print(next(g), next(g), next(g, 99))
Выберите правильный вариант
Anonymous Quiz
15%
0 1 StopIteration
49%
0 1 99
13%
0 1 None
6%
0 2 99
8%
1 2 99
8%
Посмотреть результаты
Что выведет код?
from contextlib import contextmanager
@contextmanager
def simple_context():
print("enter")
yield
print("exit")
with simple_context():
print("inside")
Выберите правильный вариант
Anonymous Quiz
47%
enter inside exit
20%
enter exit inside
11%
inside enter exit
4%
inside enter exit exit
16%
enter inside
3%
Посмотреть результаты
Что выведет код?
echo():
value = yield "start"
yield value
g = echo()
print(next(g))
print(g.send("hello"))
Выберите правильный вариант
Anonymous Quiz
10%
hello start
11%
start None
54%
start hello
15%
start TypeError
3%
start yield
6%
Посмотреть результаты
Что выведет код?
def flatten(lst):
for item in lst:
if isinstance(item, list):
yield from flatten(item)
else:
yield item
print(list(flatten([1, [2, [3, 4]], 5])))