Python Tasks & ML | Задачи по питону и машинному обучению
9.4K subscribers
27 photos
1 file
36 links
Algorithms, functions, classes, regular expressions, iterators, generators, OOP, exceptions, NumPy, pandas, scikit-learn
https://telega.in/c/python_tasks

Questions — @dina_ladnyuk
Download Telegram
Даны 4 варианта кода:
#1
[х ** 2 for х in range(5) if х % 2 == 0]
#2
list(map(lambda x: x**2, filter(lambda x: x % 2 == 0, range(5))))
#3
res = []
for x in range(5):
if x % 2 == 0:
y = x**2
res.append(y)
print(res)
#4
list(map(lambda x: x ** 2 % 4 == 0, range(5)))
Что выведет код?
[(х, у) for х in range(3) if х % 2 == 0 for у in range(3) if у % 2 == 1]
Что выведет код?
res = [х ** у for х in [2, 3] for у in [2, 3]]
print(res)
Что выведет код?
listoftuple = [(0, 1, 2), (1, 2, 3)]
string1 = [b for (a, b, c) in listoftuple]
string2 = list(map((lambda row: row[1]), listoftuple))
print(string1 == string2, sum(string1))
Что выведет код?
def gen():
for i in range(1, 5):
x = yield i
if x:
yield x**2
g = gen()
v = g.send(g.send(next(g) + next(g)) + next(g))
print(v)
Какое использование генераторного выражения будет некорректным?
#1
sorted(x ** 2 for x in range(4))

#2
sorted((x ** 2 for x in range(4)))

#3
sorted((x ** 2 for x in range(4)), reverse=True)

#4
sorted(x ** 2 for x in range(4), reverse=True)

#5
list(x ** 2 for x in range(4))
Какое использование генераторного выражения будет некорректным?
Anonymous Quiz
10%
1
18%
2
21%
3
28%
4
22%
5
Что выведет код?
import math
sum(map(math.sqrt, (x ** 2 for x in range(3))))
Что выведет код?
g1 = (c * 2 for c in 'ABC')
def gen(m):
for c in m:
yield c * 2
g2 = gen('ABC')
list(g1) == list(g2)
Что выведет код?
G = (с for с in '123')  
I1 = iter(G)
I2 = iter(G)
_ = next(I1)
_ = next(I1)
print(next(I2))
Что выведет код?
def f(n):
yield from range(n)
yield from (x ** 2 for x in range(n))
res = ':'.join(str(i) for i in f(3))
print(res)
👍1
Что введет код?
line = 'aaa bbb ccc d e f'
g1 = ''.join(x.upper() for x in line.split() if len(x) > 1)
def gen(line):
for x in line.split():
if len (x) > 1:
yield x.upper()
g2 = ''.join(gen(line))
list(g1) == list(g2)