Wyrażenia generatorowe
Poniżej znajdziesz następujące funkcje generatorowe (możesz je przetestować w konsoli):
def func1(n):
for i in range(0, n):
yield i**2
def func2(n):
for i in range(0, n):
if i%2 == 0:
yield 2*i
def func3(n, m):
for i in func1(n):
for j in func2(m):
yield ((i, j), i + j)
Zwróć uwagę, że func3() korzysta wewnętrznie z func1() i func2().
To ćwiczenie jest częścią kursu
Ćwiczenie pytań na rozmowach kwalifikacyjnych z programowania w Pythonie
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Rewrite func1() as a generator comprehension
gen = ____
for item in zip(gen, func1(10)):
print(item)