Файлы и папки

Что нужно сделать Напишите программу, которая получает на вход путь до каталога (это может быть и просто корень диска) и выводит общее количество файлов и подкаталогов в нём. Также выведите на экран размер каталога в килобайтах (1 килобайт = 1024 байт). Важный момент: чтобы посчитать, сколько весит каталог, нужно найти сумму размеров всех вложенных в него файлов. Результат работы программы на примере python_basic\Module14: Что оценивается

Дзен Пайтона

Что нужно сделать В файле zen.txt хранится так называемый Дзен Пайтона — текст философии программирования на языке Python. Выглядит он так: Напишите программу, которая выводит на экран все строки этого файла в обратном порядке. Кстати, попробуйте открыть консоль Python и ввести команду import this. Результат работы программы: Что оценивается

Сумма чисел 2

Что нужно сделать Во входном файле numbers.txt записано N целых чисел, которые могут быть разделены пробелами и концами строк. Напишите программу, которая выводит сумму чисел в выходной файл answer.txt. Пример: Что оценивается

Быстрая сортировка

Что нужно сделать Реализуйте алгоритм быстрой сортировки (её называют сортировкой Хоара). За один шаг алгоритма выполните следующие действия: Пример с разбором алгоритма выше (как сработала рекурсия) С [9, 9] всё просто. Элементов меньше или больше опорного нет, поэтому рекурсия не пойдёт глубже, а вызов рекурсии по списку [9, 9] быстро завершится и вернёт этот же список (его и не нужно было сортировать). С [5, 4, 2, … Читать далее

Список списков 2

Что нужно сделать Вы уже работали с многомерными списками и решали задачи, где с помощью list comprehensions «выпрямляли» многомерные списки в один. Однако такой фокус не пройдёт, если у элементов разные уровни вложенности и этих списков неограниченное количество. Дан такой список: Напишите рекурсивную функцию, которая раскрывает все вложенные списки, то есть оставляет только внешний список. Подсказка: можно возвращать списки и срезы списков. Что … Читать далее

Продвинутая функция sum

Что нужно сделать Как вы знаете, в Python есть полезная функция sum, которая умеет находить сумму элементов списков. Но иногда базовых возможностей функций не хватает для работы и приходится их усовершенствовать. Напишите свою функцию sum, которая должна быть более гибкой, чем стандартная функция sum. Она должна уметь: Основной код оставьте пустым или закомментированным (используйте его только для тестирования). Примеры вызовов функции: Что … Читать далее

Глубокое копирование

Что нужно сделать Вы сделали для заказчика структуру сайта по продаже телефонов: Заказчик рассказал своим коллегам на рынке, и они тоже захотели такой сайт, только для своих товаров. Вы посчитали, что это лёгкая задача, и быстро принялись за работу. Напишите программу, которая запрашивает у клиента, сколько будет сайтов, а затем запрашивает название продукта и после каждого запроса выводит на экран активные сайты. Условия: структуру … Читать далее

Поиск элемента 2

Что нужно сделать Пользователь вводит искомый ключ. Если он хочет, то может ввести максимальную глубину — уровень, до которого будет просматриваться структура. Напишите функцию, которая находит заданный пользователем ключ в словаре и выдаёт значение этого ключа на экран. По умолчанию уровень не задан. В качестве примера можно использовать такой словарь: Пример 1: Пример 2: Что оценивается

Challenge 2

Что нужно сделать Вдохновившись мотивацией Антона, ваш друг тоже решил поставить перед собой задачу, но не сильно связанную с математикой, а именно: написать функцию, которая выводит все числа от 1 до num без использования циклов. Помогите другу реализовать такую функцию. Пример работы программы: Что оценивается

Своя функция zip

Что нужно сделать В самом конце собеседования вас неожиданно спросили: «Расскажите, что делает функция zip?». Чтобы произвести впечатление, вы решили не только рассказать про неё, но и написать её аналог. Даны строка и кортеж из чисел. Напишите программу, которая создаёт генератор из пар кортежей «символ — число». Затем выведите на экран сам генератор и кортежи. Пример: Дополнительно: создайте полный аналог функции zip — сделайте так, чтобы программа работала с любыми итерируемыми … Читать далее