Самоучитель python онлайн
Задачи по Python для начинающих от Tproger и GeekBrains
Вместе с факультетом Python-разработки GeekUniversity собрали для вас несколько простых задач по Python для обучения и тренировки. Их можно решать в любом порядке.
Обратите внимание, что у любой задачи по программированию может быть несколько способов решения. Чтобы посмотреть добавленный нами вариант решения, кликните по соответствующей кнопке. Все приведённые варианты написаны на Python 3.
Задача 1
Есть список a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] .
Выведите все элементы, которые меньше 5 .
Самый простой вариант, который первым приходит на ум — использовать цикл for :
Также можно воспользоваться функцией filter , которая фильтрует элементы согласно заданному условию:
И, вероятно, наиболее предпочтительный вариант решения этой задачи — списковое включение:
print([elem for elem in a if elem
Задача 2
a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] ;
b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] .
Нужно вернуть список, который состоит из элементов, общих для этих двух списков.
И снова мы можем воспользоваться циклом for :
Или функцией filter :
Или списковым включением:
result = [elem for elem in a if elem in b]
А можно привести оба списка к множествам и найти их пересечение:
result = list(set(a) & set(b))
Однако в таком случае каждый элемент встретится в результирующем списке лишь один раз, т.к. множество поддерживает уникальность входящих в него элементов. Первые два решения (с фильтрацией) оставят все дубли на своих местах.
Задача 3
Отсортируйте словарь по значению в порядке возрастания и убывания.
Импортируем нужный модуль и объявляем словарь:
Сортируем в порядке возрастания:
И в порядке убывания:
result = dict ( sorted ( d . items ( ) , key = operator . itemgetter (1 ) , reverse = True ) )
Задача 4
Напишите программу для слияния нескольких словарей в один.
Допустим, вот наши словари:
Объединить их можно вот так:
А можно с помощью «звёздочного» синтаксиса:
О звёздочном синтаксисе можно прочитать в нашей статье.
Задача 5
Найдите три ключа с самыми высокими значениями в словаре my_dict = <'a':500, 'b':5874, 'c': 560,'d':400, 'e':5874, 'f': 20>.
Можно воспользоваться функцией sorted :
Аналогичный результат можно получить с помощью функции nlargest из модуля heapq :
Задача 6
Напишите код, который переводит целое число в строку, при том что его можно применить в любой системе счисления.
Второй аргумент функции int отвечает за указание основания системы счисления:
Задача 7
Нужно вывести первые n строк треугольника Паскаля. В этом треугольнике на вершине и по бокам стоят единицы, а каждое число внутри равно сумме двух расположенных над ним чисел.
Задача 8
Напишите проверку на то, является ли строка палиндромом. Палиндром — это слово или фраза, которые одинаково читаются слева направо и справа налево.
Тут всё просто, достаточно сравнить строку с её обратной версией, для чего можно использовать встроенную функцию reversed:
Того же эффекта можно добиться с помощью срезов:
Задача 9
Сделайте так, чтобы число секунд отображалось в виде дни:часы:минуты:секунды .
Задача 10
Вы принимаете от пользователя последовательность чисел, разделённых запятой. Составьте список и кортеж с этими числами.
Задача 11
Выведите первый и последний элемент списка.
Задача 12
Напишите программу, которая принимает имя файла и выводит его расширение. Если расширение у файла определить невозможно, выбросите исключение.
Задача 13
При заданном целом числе n посчитайте n + nn + nnn.
Курс Полный курс Python для начинающих – с нуля до специалиста
Полное руководство по Python 3 — от новичка до специалиста — Изучи Python с нуля и стань востребованным разработчиком во всем мире!
Полный курс Python состоит из 9 разделов, обучение от простого к сложному. Подходит для новичков, которые никогда не программировали. И для опытных программистов, которые хотят стать разработчиками на Python.
Полный онлайн курс Python для начинающих – Обучение с нуля до специалиста
Поделитесь страницей с друзьями
О курсе — Чему Вы научитесь?
Python — это именно тот язык с которого стоит начинать изучать программирование.
Python высокоуровневый язык программирования общего назначения, т.е. его можно использовать практически для любых целей. Python входит в ТОП-10 наиболее популярных языков программирования.
Популярность Python объясняется не только тем, что его легко изучать, но и реальными преимуществами языка в смысле его профессионального применения для решения сложных проблем автоматизации. Python — кросс-платформенный язык и работает под Windows, Linux, Mac OS. Множество архитектурных конструкций в этом языке строятся без нагромождения абстракций, как часто происходит в других языках программирования. Огромное количество уже готовых библиотек даёт возможность не изобретать велосипеды на каждом шагу.
Этот курс покрывает все основные возможности Python и даёт рекомендации по написанию грамотного, «чистого» кода.
Чему вы научитесь
- Установка Python, работа с редактором кода Anaconda для Python-программирования
- Все основные конструкции языка Python — переменные, операторы, типы данных, работа со строками, условия, циклы, работа с файлами, работа с функциями, модулями и пакетами, применение классов и др.
- Писать простые программы на Python 3
- Как писать простые игры типа крестиков-ноликов или виселицы
- Логика с условиями и циклами
- Обработка ошибок и исключений, юнит-тестирование
- Объектно-ориентированное программирование на Python
- Использование Jupyter Notebook
- Использование коллекций в Python: списки, словари и так далее
- Декораторы
- Неизменяемые объекты
- Лучшие практики по написанию «чистого» кода на Python
Дополнительно изучим темы:
- Отладка, реализуем stack, namedtuple, декораторы, datetime, enum, интроспекция, управление памятью
- Встроенные модули: json, itertools, requests
- Инфраструктура и новые фичи: линтеры, виртуальные окружения, data classes, type hints
- PyCharm: установка, создание проекта, отладка, рефакторинг, quick fixes
- И многое другое из области изучения и применения Python на практике!
Для кого этот курс
- Новички, которые никогда не пробовали программировать. В курсе обучение Python проходит с нуля
- Программисты, которые хотят вникнуть в новый для себя язык программирования
Python часто используется в задачах связанных с нейронными сетями и искусственным интеллектом. Поэтому в последние годы его популярность выросла в несколько раз, а специалисты таких направлений будут востребованы ближайшие 5-10 лет! С интересными задачами программирования на языке Python вам точно не придется скучать!
Начинайте изучение Python прямо сейчас — вступайте в новую увлекательную жизнь программирования на Python!