🐍 6 проектов на Python, которые можно завершить за выходные

В этой статье рассматриваются проекты с разным уровнем сложности, которые помогут закрепить изученный материал и повысить уровень качества вашего кода.

Перевод публикуется с сокращениями, автор оригинальной статьи Frank Andrade.

Изучение Python бывает трудным делом. Вы можете потратить массу времени на просмотр видео и чтение книг, но если не сможете применить изученные концепции на практике, время будет потрачено впустую.

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

Камень, ножницы, бумага

Классическая ручная игра, с которой, мы уверены, вы знакомы. Обычно в нее играет от двух людей. Каждый игрок в конкретный момент времени формирует одну из трех фигур своей рукой. В этом проекте для начинающих вы узнаете, как реализовать основные элементы Python, такие как списки, операторы if и инпуты.

Цель состоит в том, чтобы создать систему, в которой решивший показать камень игрок победит другого игрока, который выбрал ножницы, но проиграет тому, кто играл за бумагу, а игра за бумагу кончится трагически в игре против ножниц. Если проект кажется вам интересным, ознакомьтесь с руководством, которое включает в себя полный код программы.

Это самая простая игра, которую вы можете создать на Python. После завершения проекта можно будет разрабатывать более сложные игры с компьютерной графикой и звуком с помощью библиотеки Pygame. Ниже перечислены некоторые из игр, которые вы можете создать с помощью Pygame:

  • крестики нолики;
  • палач;
  • угадывание числа;
  • викторина;
  • змейка.

Переименование файлов

Большинство заданий требуют сортировки папок по дате или управления именами файлов с помощью заранее определенного синтаксиса. Вы можете сделать это вручную, а можно сэкономить много времени с помощью Python.

Цель проекта – переименовать сотни хранящихся на компьютере файлов, чтобы легко распознать каждый из них. Например, вы можете добавить дату создания файла в формате «MM-DD-YY» к имени, чтобы любой мог его легко найти.

Чтобы сделать это возможным, в Python следует использовать входящий в комплект поставки модуль ОС. Он обеспечивает возможность взаимодействия с операционной системой, поэтому позволяет управлять многими функциями с помощью кода Python. Библиотека, которая пригодится для этого проекта – встроенный пакет под названием re. Он позволяет работать с регулярными выражениями, которые могут понадобиться в случае, если в имени файла есть некоторые текстовые шаблоны, которые вы хотите извлечь и повторно использовать.

Вот несколько задач, которые можно выполнять с помощью упомянутой библикотеки:

  • создание нескольких папок и их переименование;
  • удаление каталога;
  • идентификация и индексация текущего рабочего каталога.

Автоматизация электронных таблиц

Повторяющиеся задачи, вроде обновления отчетов в Excel, отнимают много времени. К счастью, библиотека Python openpyxl поможет автоматизировать большинство задач, которые приходится выполнять в Excel.

Идея этого проекта заключается в использовании кода Python для выполнения задач Excel, таких как создание сводных таблиц, построение диаграмм, применение формул Excel и форматирование результирующей таблицы отчетов. Как только с написанием будет покончено, нужно запустить скрипт, чтобы создать подобный приведенному ниже отчет:

Вы даже можете создать функцию Python, преобразовывающую кастомный скрипт в исполняемый .exe-файл и запланировать выполнение сценария для создания отчета ежемесячно, еженедельно или ежедневно.

Создание GUI

Писать код на Python – это круто, но еще круче взаимодействовать с кодом через графический пользовательский интерфейс, чтобы любой мог протестировать вашу разработку.

Библиотеки Python Tkinter, PyQt и Kivy помогут создать графический интерфейс с кнопками, окнами и множеством других виджетов, облегчающих взаимодействие пользователя с приложением. Если вы никогда раньше не создавали GUI, можете изучить и применить этот курс по Tkinter к своим проектам.

Идея проста – создание графического интерфейса для любого проекта, который вы уже закончили. Можно создать GUI для перечисленных в статье приложений или вдохновиться следующим списком:

  • Калькулятор возраста: приложение позволяет пользователям вводить дату своего рождения, а в ответ автоматически просчитается их возраст.
  • Калькулятор: если вы когда-либо разрабатывали калькулятор во время изучения Python, теперь пришло время улучшить вывод с помощью графического интерфейса. Черпайте вдохновение из калькулятора, который поставляется вместе с вашей операционкой.
  • Конвертер валют: создайте приложение для конвертации валют, которое дает возможность пользователям вводить желаемое значение в одной валюте и возвращать преобразованное значение в целевой.

Создание простого сайта-портфолио

Если вы когда-нибудь мечтали о создании сайта, можно воплотить идею с помощью Python и двух самых популярных фреймворков – Django и Flask.

Django – это высокоуровневый веб-фреймворк Python, который поощряет быструю разработку и чистый дизайн. Он шустрый, масштабируемый и серьезно относится к безопасности, поэтому такие сайты, как Instagram, Pinterest и Washington Post, были созданы с помощью Django. С другой стороны, Flask – это легкий фреймворк, предлагающий основные функции веб-приложения. Он требует меньше программирования, поэтому это отличный старт для изучения основ веб-разработки.

Классный проект для начинающих в Django – сайт резюме/портфолио, чтобы продемонстрировать свою работу. Ваш первый веб-сайт не будет похож (и не должен) на современные сайты с красивым дизайном, но завершив проект, вы узнаете основы: рендеринг шаблона, добавление статических CSS-файлов, JavaScript и изображений. Изучите этот туториал, чтобы лучше понять, как оно работает.

Дополнительные материалы
Если вы хотите получить углубленные знания по Flask или Django, вот раз канал и два канал, где есть серии обучалок для обоих фреймворков.

Система рекомендаций фильмов

А вы знаете, как стриминговые сервисы (Netflix, Hulu или Amazon) рекомендуют к просмотру новый фильм? За всем стоит система рекомендаций, которая находит лучший фильм на основе различной информации о пользователях.

Система рекомендаций – это программа, направленная на прогнозирование предпочтений пользователя по отношению к определенному элементу. В Python можно использовать такие библиотеки, как Pandas, Numpy и Scikit, чтобы научиться разрабатывать механизмы рекомендаций от базовых моделей до систем рекомендаций на основе контента и совместной фильтрации.

Для выполнения этого проекта вам понадобится набор данных с названиями фильмов и, по крайней мере, описанием сюжета. Можете использовать набор данных от IMDb или от MovieLens для этого проекта. По этой ссылке есть крутое руководство по созданию системы рекомендаций на Python.

Заключение

В любом деле, особенно в программировании важна постоянная практика иначе все забудется. Рассмотренные простенькие проекты вполне сойдут на роль «вспомнить все» и попрактиковать полученные знания. Не пренебрегайте этой возможностью и чаще тренируйтесь. Удачи в обучении!

Дополнительные материалы:

***

На Python создают прикладные приложения, пишут тесты и бэкенд веб-приложений, автоматизируют задачи в системном администрировании, его используют в нейронных сетях и анализе больших данных. Язык можно изучить самостоятельно, но на это придется потратить немало времени. Если вы хотите быстро понять основы программирования на Python, обратите внимание на онлайн-курс «Библиотеки программиста». За 30 уроков (15 теоретических и 15 практических занятий) под руководством практикующих экспертов вы не только изучите основы синтаксиса, но и освоите две интегрированные среды разработки (PyCharm и Jupyter Notebook), работу со словарями, парсинг веб-страниц, создание ботов для Telegram и Instagram, тестирование кода и даже анализ данных. Чтобы процесс обучения стал более интересным и комфортным, студенты получат от нас обратную связь. Кураторы и преподаватели курса ответят на все вопросы по теме лекций и практических занятий.

Источники

МЕРОПРИЯТИЯ

Комментарии

ВАКАНСИИ

Добавить вакансию
IOS Developer
Новосибирск, по итогам собеседования
IOS разработчик
Казань, от 180000 RUB до 250000 RUB

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ