Занимательные задачи Python. Часть 37
Дана папка с файлами и подпапками.
Найдите все файлы, которые
содержат более одного
расширения в имени
(например, archive.tar.gz),
и выведите их пути.
Дан многомерный список:
lst = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
]
Транспонируйте этот список (поменяйте строки и столбцы местами):
[
[1, 4, 7],
[2, 5, 8],
[3, 6, 9],
]
Дан файл с текстом. Найдите в нем все строки, которые содержат хотя бы одно число, и замените эти числа на их квадраты, записав результат в новый файл.
Дан список чисел:
lst = [1, 2, 3, 4, 5, 6]
Найдите все возможные способы разбить этот список на тройки так, чтобы суммы чисел в каждой тройке были равны.
Дана папка с файлами. Найдите все файлы, которые являются дубликатами (одинаковое содержимое), и выведите их пути, сгруппированные по группам.
Дан многомерный словарь:
dct = {
'a': {'b': {'c': 1}},
'd': {'e': 2, 'f': {'g': 3}},
'h': 4,
}
Найдите все ключи, которые ведут к значениям-числам, и выведите пути к ним в виде строк, разделенных точками.
Дан файл с текстом. Найдите в нем все email-адреса и запишите их в новый файл, каждый адрес на своей строке.
Дан список чисел:
lst = [3, 5, 7, 9, 11, 13]
Найдите все возможные тройки чисел из этого списка, которые могут быть сторонами прямоугольного треугольника (теорема Пифагора).
Дана папка с файлами. Найдите
все файлы, которые
были изменены
за последние 7 дней,
и выведите их пути
и даты изменения.
Дан многомерный список:
lst = [
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
]
Найдите все возможные пути от левого верхнего угла до правого нижнего, двигаясь только вправо или вниз. Выведите количество таких путей.
Дан файл с текстом. Найдите в нем все слова, которые встречаются ровно три раза, и запишите их в новый файл в порядке первого появления.