Занимательные задачи Python. Часть 33
Дана папка с файлами и подпапками. Найдите общий размер всех файлов в этой папке, включая все уровни вложенности.
Дан многомерный словарь произвольной вложенности:
dct = {
'a': 1,
'b': {'c': 2, 'd': {'e': 3, 'f': 4}},
'g': {'h': {'i': {'j': 5}}},
}
Найдите сумму всех чисел в этом словаре на всех уровнях вложенности.
Дан список чисел:
lst = [1, 2, 3, 4, 5, 6, 7, 8]
Найдите все возможные способы разбить этот список на пары так, чтобы сумма чисел в каждой паре была одинаковой.
Дан файл с текстом. Найдите в нем все слова, которые являются палиндромами, и запишите их в новый файл, каждое слово на своей строке.
Дан многомерный список:
lst = [[1, 2], [3, [4, 5]], [6, [7, [8, 9]]]]
Найдите сумму чисел на каждом уровне вложенности отдельно. Выведите список сумм по уровням.
Дана папка с файлами. Найдите все файлы, которые встречаются в разных подпапках под одним и тем же именем, и выведите их пути.
Дана строка:
txt = '{{a,b},{c,{d,e}},{f,{g,{h,i}}}}'
Преобразуйте эту строку в многомерный список.
Дан файл с текстом. Найдите все числа в этом файле и запишите их в новый файл в порядке возрастания, каждое число на своей строке.
Дан список чисел:
lst = [2, 3, 4, 5, 6, 7, 8, 9]
Найдите все возможные
комбинации чисел из этого
списка, которые в сумме
дают 20.
Дана папка с файлами и подпапками.
Постройте дерево этой папки
в виде вложенного словаря,
где ключи - имена папок
и файлов, а значения -
вложенные словари или None
для файлов.
Дан многомерный список:
lst = [1, [2, 3], [4, [5, 6]], 7, [8, [9, [10]]]]
Найдите путь к числу 10
в виде последовательности
индексов, например:
[4, 1, 1, 0]