Skip to content

Latest commit

 

History

History
53 lines (42 loc) · 1.21 KB

answers-3.3.md

File metadata and controls

53 lines (42 loc) · 1.21 KB

Ответы и решения задач из хэндбука Яндекс «Основы Python», параграф 3.3

3.3. Списочные выражения. Модель памяти для типов языка Python

A. Список квадратов

[x ** 2 for x in range(a, b + 1)]

B. Таблица умножения 2.0

[[i * j for j in range(1, n + 1)] for i in range(1, n + 1)]

C. Длины всех слов

[len(x) for x in sentence.split()]

D. Множество нечетных чисел

{x for x in numbers if x % 2 != 0}

E. Множество всех полных квадратов

{x for x in numbers if (x ** 0.5).is_integer()}

F. Буквенная статистика

{x: text.lower().count(x) for x in text.lower() if x.isalpha()}

G. Делители

{i: [j for j in range(1, i + 1) if i % j == 0] for i in numbers}

H. Аббревиатура

"".join([x[0].upper() for x in string.split()])

I. Преобразование в строку

" - ".join([str(x) for x in sorted(set(numbers))])

J. RLE наоборот

"".join([i * j for i, j in rle])