задачи для python для практики
Python упражнения, практика, решение
Что такое язык Python?
Python поддерживает несколько парадигм программирования, включая объектно-ориентированное, императивное и функциональное программирование или процедурные стили. Он имеет динамическую систему типов и автоматическое управление памятью, а также имеет обширную и всеобъемлющую стандартную библиотеку.
Список упражнений Python:
Проблемы с Python:
Проекты Python Mini:
Python NumPy:
Питон Панды:
Python BeautifulSoup:
Python Web Scraping:
Python Natural Language Toolkit:
Модуль Python Arrow:
Пакет Python GeoPy:
Больше.
Замечания :
Загрузите Python с https://www.python.org/ftp/python/3.2/ и установите в своей системе для выполнения программ на Python. Вы можете прочитать нашу Установку Python на Fedora Linux и Windows 7, если вы не знакомы с установкой Python.
Вы можете выполнить одну и ту же задачу (решение упражнений) различными способами, поэтому способы, описанные здесь, не являются единственными. Скорее, было бы здорово, если это все равно поможет вам выбрать свои собственные методы.
Список упражнений с решениями:
Популярность языка программирования По всему миру, август 2019 года по сравнению с прошлым годом:
| Ранг | + Изменить | язык | Поделиться | тенденция |
|---|---|---|---|---|
| 1 | питон | 28,73% | +4,5% | |
| 2 | Джава | 20,0% | -2,1% | |
| 3 | Javascript | 8,35% | -0,1% | |
| 4 | C # | 7,43% | -0,5% | |
| 5 | PHP | 6,83% | -1,0% | |
| 6 | C / C ++ | 5,87% | -0,3% | |
| 7 | р | 3,92% | -0,2% | |
| 8 | Objective-C | 2,7% | -0,6% | |
| 9 | стриж | 2,41% | -0,3% | |
| 10 | Matlab | 1,87% | -0,3% | |
| 11 | ![]() | Машинопись | 1,76% | + 0,2% |
| 12 | ![]() | Рубин | 1,44% | -0,2% |
| 13 | ![]() | Котлин | 1,43% | + 0,4% |
| 14 | ![]() | VBA | 1,41% | -0,0% |
| 15 | ![]() | Идти | 1,21% | + 0,3% |
| 16 | ![]() | Scala | 1,15% | -0,1% |
| 17 | ![]() | Visual Basic | 1,1% | -0,1% |
| 18 | ![]() | Ржавчина | 0,63% | + 0,3% |
| 19 | ![]() | Perl | 0,58% | -0,1% |
| 20 | ![]() | Lua | 0,37% | -0,0% |
| 21 | Haskell | 0,3% | +0.0% | |
| 22 | Delphi | 0,27% | +0.0% | |
| 23 | Юля | 0,26% | + 0,1% |
Индекс TIOBE за август 2019 года
[Хотите внести свой вклад в упражнения Python? Отправьте ваш код (прикрепленный к ZIP-файлу) нам на w3resource [at] yahoo [dot] com. Пожалуйста, избегайте материалов, защищенных авторским правом.]
Задачи по Python
Каждому изучающему Python нужно писать код для закрепления. Вашему вниманию предлагаются несколько задач для реализации (не слишком простых (кроме первой) и не слишком сложных).
Для выполнения заданий крайне рекомендуется пройти самоучитель.
Также для этих задач есть репозиторий с тестами и моими решениями (чтобы проверить себя).
Для запуска тестов для вашей функции проще всего будет добавить код из папки с тестами в конец файла с функцией.
А теперь, собственно, задачи:
Простейшие арифметические операции (1)
Високосный год (2)
Написать функцию is_year_leap, принимающую 1 аргумент — год, и возвращающую True, если год високосный, и False иначе.
Квадрат (3)
Написать функцию square, принимающую 1 аргумент — сторону квадрата, и возвращающую 3 значения (с помощью кортежа): периметр квадрата, площадь квадрата и диагональ квадрата.
Времена года (4)
Написать функцию season, принимающую 1 аргумент — номер месяца (от 1 до 12), и возвращающую время года, которому этот месяц принадлежит (зима, весна, лето или осень).
Банковский вклад (5)
Пользователь делает вклад в размере a рублей сроком на years лет под 10% годовых (каждый год размер его вклада увеличивается на 10%. Эти деньги прибавляются к сумме вклада, и на них в следующем году тоже будут проценты).
Написать функцию bank, принимающая аргументы a и years, и возвращающую сумму, которая будет на счету пользователя.
Простые числа (6)
Правильная дата (7)
Написать функцию date, принимающую 3 аргумента — день, месяц и год. Вернуть True, если такая дата есть в нашем календаре, и False иначе.
XOR-шифрование (8)
Написать функцию XOR_cipher, принимающая 2 аргумента: строку, которую нужно зашифровать, и ключ шифрования, которая возвращает строку, зашифрованную путем применения функции XOR (^) над символами строки с ключом. Написать также функцию XOR_uncipher, которая по зашифрованной строке и ключу восстанавливает исходную строку.
Задачи Python
Введение
При изучении любого языка программирования очень важно много практиковаться. В этом уроке Вы найдёте различные задачи, которые помогут Вам развить алгоритмическое мышление.
I like Python
Напишите программу, которая выводит на экран текст «I***like***Python» (без кавычек).
Управляемый разделитель
Напишите программу, которая считывает строку-разделитель и три строки, а затем выводит указанные строки через разделитель.
Сумма трёх чисел
Напишите программу, которая считывает три целых числа и выводит на экран их сумму. Каждое число записано в отдельной строке.
Следующее и предыдущее
Напишите программу, которая считывает целое число, после чего на экран выводится следующее и предыдущее целое число с пояснительным текстом.
Разделяй и властвуй
Напишите программу, которая считывает целое положительное число xx и выводит на экран последовательность чисел x, 2x, 3x, 4x, 5x, разделённых тремя черточками.
Расстояние в метрах
Напишите программу, которая находит полное число метров по заданному числу сантиметров.
Сама неотвратимость
Безумный титан Танос собрал все 6 камней бесконечности и намеревается уничтожить половину населения Вселенной по щелчку пальцев. При этом если население Вселенной является нечетным числом, то титан проявит милосердие и округлит количество выживших в большую сторону. Помогите Мстителям подсчитать количество выживших.
Пересчет временного интервала
Напишите программу для пересчёта величины временного интервала, заданного в минутах, в величину, выраженную в часах и минутах.
Трехзначное число
Напишите программу, в которой рассчитывается сумма и произведение цифр положительного трёхзначного числа.
Четырёхзначное число
Напишите программу для нахождения цифр четырёхзначного числа.
Пароль
При регистрации на сайтах требуется вводить пароль дважды. Это сделано для безопасности, поскольку такой подход уменьшает возможность неверного ввода пароля.
Напишите программу, которая сравнивает пароль и его подтверждение. Если они совпадают, то программа выводит: «Пароль принят», иначе: «Пароль не принят».
Четное или нечетное?
Напишите программу, которая определяет, является число четным или нечетным.
Роскомнадзор
Напишите программу, которая определяет, разрешен пользователю доступ к интернет-ресурсу или нет.
Формат входных данных
На вход программе подаётся целое число — возраст пользователя.
Формат выходных данных
Программа должна вывести текст «Доступ разрешен» если возраст не менее 18, и «Доступ запрещен» в противном случае.
Арифметическая прогрессия
Напишите программу, которая определяет, являются ли три заданных числа (в указанном порядке) последовательными членами арифметической прогрессии.
Наименьшее из четырёх чисел
Напишите программу, которая определяет наименьшее из четырёх чисел.
Только +
Напишите программу, которая считывает три числа и подсчитывает сумму только положительных чисел.
Принадлежность 1
Принадлежность 2
Принадлежность 3
Високосный год
Напишите программу, которая определяет, является ли год с данным номером високосным. Если год является високосным, то выведите «YES», иначе выведите «NO». Год является високосным, если его номер кратен 4, но не кратен 100, или если он кратен 400.
Ход ладьи
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли ладья попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом ладьи можно попасть во вторую, или «NO» в противном случае.
Ход короля
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли король попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом короля можно попасть во вторую, или «NO» в противном случае.
Вид треугольника
Напишите программу, которая принимает три положительных числа и определяет вид треугольника, длины сторон которого равны введенным числам.
Самописный калькулятор
Цветовой микшер
Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов. При смешивании двух основных цветов получается вторичный цвет:
Напишите программу, которая считывает названия двух основных цветов для смешивания. Если пользователь вводит что-нибудь помимо названий «красный», «синий» или «желтый», то программа должна вывести сообщение об ошибке. В противном случае программа должна вывести название вторичного цвета, который получится в результате.
Python функции [20 упражнений с решением]
1. Напишите функцию Python, чтобы найти максимум трех чисел. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
2. Напишите функцию Python для суммирования всех чисел в списке. Перейти к редактору
Список образцов : (8, 2, 3, 0, 7)
Ожидаемый результат : 20
Нажмите меня, чтобы увидеть образец решения
4. Напишите программу на Python для обращения строки. Перейти к редактору
Пример строки : «1234abcd»
Ожидаемый результат : «dcba4321»
Нажмите меня, чтобы увидеть образец решения
5. Напишите функцию Python для вычисления факториала числа (неотрицательное целое число). Функция принимает число в качестве аргумента. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
6. Напишите функцию Python, чтобы проверить, находится ли число в заданном диапазоне. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
7. Напишите функцию Python, которая принимает строку и рассчитывает количество букв верхнего и нижнего регистра. Перейти к редактору
Пример строки : «Быстрая Лиса Бровей»
Ожидаемый результат :
Количество символов в верхнем регистре: 3
Количество строчных букв: 12
Нажмите меня, чтобы увидеть образец решения
8. Напишите функцию Python, которая берет список и возвращает новый список с уникальными элементами первого списка. Перейти к редактору
Список образцов: [1,2,3,3,3,3,4,5]
Уникальный список: [1, 2, 3, 4, 5]
Нажмите меня, чтобы увидеть образец решения
10. Напишите программу на Python для печати четных чисел из заданного списка. Перейти к редактору
Список образцов : [1, 2, 3, 4, 5, 6, 7, 8, 9]
Ожидаемый результат : [2, 4, 6, 8]
Нажмите меня, чтобы увидеть образец решения
Образец треугольника Паскаля:
15. Напишите программу на языке Python, которая принимает в качестве входных данных последовательность слов, разделенных дефисами, и печатает слова в последовательности, разделенной дефисами, после сортировки по алфавиту. Перейти к редактору
Образцы элементов : зеленый-красный-желтый-черный-белый
Ожидаемый результат : черный-зеленый-красный-бело-желтый
Нажмите меня, чтобы увидеть образец решения
16. Напишите функцию Python, чтобы создать и распечатать список, значения которого представляют собой квадрат чисел от 1 до 30 (оба включены). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
17. Напишите программу на Python, чтобы создать в Python цепочку декораторов функций (полужирный, курсив, подчеркивание и т. Д.). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
18. Напишите программу на Python для выполнения строки, содержащей код Python. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
19. Напишите программу на Python для доступа к функции внутри функции. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
20. Напишите программу на Python для определения количества локальных переменных, объявленных в функции. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
Редактор кода Python:
Не отправляйте решение вышеупомянутых упражнений здесь, если вы хотите внести вклад, перейдите на соответствующую страницу упражнения.
Можете накидать большую порцию задачек для практики Python-новичка?
Средний 7 комментариев
Я когда также искал наткнулся на один сайт там человек выложил тестовое задание которое он получил на вакансию Junior Python Developer.
Сам сайт я не сохранял сохранил только задание. Выполняя это задание ты охватишь то что учил и освоишь новые технологии.
Собственно вот само задание:
Цель тестового задания
Определить возможную динамику самообучения кандидата. А так же глубину понимания кода, реализующего тестовое задание.
Задание
Написать тестовое web-приложение по управлению электронной библиотекой:
1. Редактирование (доступно авторизованному пользователю при наличии аутентификации):
Управление списком книг: добавить / удалить / редактировать книгу.
Управление списком авторов: добавить / удалить / редактировать автора.
Запись о книге содержит следующие данные: ID, Название.
Запись об авторе содержит следующие данные: ID, Имя.
Свзязь между книгами и авторами — многие ко многим.
2. Поиск книг по названию либо автору (доступно анонимному пользователю при наличии аутентификации).
3. Аутентификации и авторизация (по желанию кандидата).
Технологии, которые должны быть задействованы:
Flask
SQLAlchemy (Declarative)
SQLite (встроенный в приложение)
Jinja2 Templates
WTForms
jQuery (желательно, но возможно использование альтернативных решений)
Список может быть расширен по усмотрению кандидата, но с обязательным использованием технологий, перечисленных выше.
Дополнительные требования
Список дополнительных требований следующий:
1. Код проекта должен быть доступен на сервисе github.org или bitbucket.org.
2. Проект должен содержать SQL-скрипты для развертывания базы данных и наполнения ее тестовыми данными.
3. Пользовательские данные должны валидироваться перед сохранением в БД.
Дополнительные знания
Дополнительные знания, необходимые при защите проекта:
HTTP
WSGI
SQL, Transactions, Transaction Isolation Levels
SQLAlchemy
Уязвимости веб-сайтов
User Experience







