Что выведет код?
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
25%
[10, 20, 10, 20]
13%
[10, 10, 10]
41%
[10, 20, 10]
15%
[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
7%
[0, 1, 2]
19%
[-1, [0, 1], 2]
63%
[-1, 0, 1, 2]
7%
[-1, 1, 2]
1%
[-1, 0, 2, 1]
1%
Посмотреть результаты
Что выведет код?
g = (x for x in range(2))
print(next(g), next(g), next(g, 99))
Выберите правильный вариант
Anonymous Quiz
14%
0 1 StopIteration
55%
0 1 99
9%
0 1 None
6%
0 2 99
9%
1 2 99
6%
Посмотреть результаты
Что выведет код?
from contextlib import contextmanager
@contextmanager
def simple_context():
print("enter")
yield
print("exit")
with simple_context():
print("inside")
Выберите правильный вариант
Anonymous Quiz
45%
enter inside exit
23%
enter exit inside
11%
inside enter exit
3%
inside enter exit exit
15%
enter inside
3%
Посмотреть результаты
Что выведет код?
echo():
value = yield "start"
yield value
g = echo()
print(next(g))
print(g.send("hello"))
Выберите правильный вариант
Anonymous Quiz
12%
hello start
12%
start None
52%
start hello
17%
start TypeError
1%
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])))
Выберите правильный вариант
Anonymous Quiz
13%
[1, [2, [3, 4]], 5]
13%
[1, 2, [3, 4], 5]
12%
[1, 2, 3, [4], 5]
56%
[1, 2, 3, 4, 5]
0%
[1, 2, [3], [4], 5]
6%
Посмотреть результаты
Что выведет код?
from itertools import tee
it = iter([10, 20, 30])
a, b = tee(it)
print(next(a), next(b), list(a), list(b))
Выберите правильный вариант
Anonymous Quiz
9%
10 20 [30] [30]
16%
10 20 [30] []
18%
10 10 [20, 30] []
41%
10 10 [20, 30] [20, 30]
2%
10 20 [30] [20, 30]
14%
Посмотреть результаты
Что выведет код?
with open("data.txt", "w", encoding="utf-8") as f:
f.write("apple\n")
f.write("banana\n")
f.write("cherry\n")
def read_lines():
for line in open("data.txt"):
yield line.strip()
lines = read_lines()
print(next(lines))
print(next(lines))
print(next(lines))
Выберите правильный вариант
Anonymous Quiz
68%
apple banana cherry
9%
apple banana StopIteration
11%
apple banana cherry cherry
9%
['apple', 'banana', 'cherry']
2%
TypeError
0%
Посмотреть результаты