Делаем добро вместе Детальнее

it Новости Наполняем портфолио: 12 идей для Python-проектов
Наполняем портфолио: 12 идей для Python-проектов

Наполняем портфолио: 12 идей для Python-проектов

29 683
16 августа 2021 в 18:15

Хорошую работу в ИТ можно получить и без диплома о высшем образовании. Ведь карьера удачно строится не на бумажках, а на собственных навыках, лучшим доказательством которых будут реальные проекты.

Сейчас мы разберем 12 идей для создания проектов на языке Python, которые идеально впишутся в ваше портфолио. Причем все они из разных сфер и немного различаются по сложности. 


1. Умный ассистент

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


Например, можно воспользоваться Pyttsx3 для реализации функции распознавания текста. А с модулем os настроить проигрывание музыкальных файлов, запуск приложений и пр. Функционал программы хорошо дополнит автоматизация рутинных задач и агрегатор сайтов — благодаря им ваш проект станет выглядеть внушительнее.


Но конечной точки у ассистента нет. Чем многообразнее функции, тем более полезный получается результат.


2. Автоматизатор задач

Аналог первого варианта, но с уклоном в автоматизацию. Какие задачи можно автоматизировать? К примеру, управление файлами: переместить, копировать, удалить и переименовать. Или создайте скрипт, высылающий поздравления с днем рождения. В качестве инструментов возьмите такие библиотеки: Selenium (пакет для автоматизации взаимодействия веб-браузера и Python), BeautifulSoup (веб-скрейпинг), win10toast (выведение уведомлений Windows), пр.


3. Веб-сайт 

Создание своего сайта тоже отличная идея. Можно остановиться на “обычном” варианте: платформа для осуществления электронных платежей, портал для обучения и т.п. Но можно попробовать разработать ресурс, который будет автоматизировать какие-нибудь ежедневные задачи. Например, конвертация текстовых файлов в аудио или автоматическая отправка электронных писем. Наверняка у вас получится придумать много интересных и практичных идей! Просто не бойтесь реализовать их.



4. Игра

Разработка игр требует усидчивости, большого количества времени и навыков. Зато что может быть увлекательнее? Игра способна очень многое рассказать о своем авторе: о его изобретательности, креативности и собранности. А качество продукта отлично демонстрирует знания программирования. Есть много Python-библиотек для тех, кто занимается этим видом деятельности: переходите по ссылке и выбирайте то, что подходит именно вам.


5. Графический интерфейс пользователя

Создание GUI — классный проект и отличный способ хорошо зарекомендовать себя при приеме на работу. Графический пользовательский интерфейс — это система взаимодействия ПО и пользователя. Т.е. то, что человек видит и посредством чего “общается” с программой. 


Зайдите в ближайшие магазины, узнайте, в каких программах они нуждаются, и создайте ПО с GUI, которое удовлетворяло бы этим запросам. Запомните: чем лучше пользовательский интерфейс, тем лучшее впечатление на людей производит ваша программа. А это значит, что шансы заработать на ней хорошие деньги сильно повышаются!


Из всех библиотек Python, которые предназначены для разработки GUI, самой популярной является Tkinter. Единственный минус — новичкам в ней не так просто разобраться. Но кроме Tkinter есть много других классных GUI-библиотек, познакомиться с которыми можно здесь.


6. Система компьютерного зрения

Машинное зрение — один из главных современных трендов. Почти все крупные компании в том или ином виде внедряют его в свои технологии. В этой области есть масса успешных стартапов. Но главное то, что реализуя такую модель, вы продемонстрируете работодателю свою способность быстро осваивать ИТ-новинки.


Машинное зрение можно применять в разных областях: распознавание лиц, определение болезней на основе рентгеновских снимков, оценка дорожного движения и т.д. В процессе работы над таким ПО вам сильно помогут Python-библиотеки. От себя можем посоветовать одну из самых лучших — это OpenCV



7. Программа-анализатор настроения

Что такое настроение? Это наши мысли, эмоции и чувства, которые бывают негативными, нейтральными и позитивными. Анализ настроения относится к сфере NLP — обработки естественного языка. Если говорить об идеях, то можно реализовать приложение, определяющие настроение человека по оставленному им отзыву. Такое распознавание пригодится во многих случаях: для магазинов, сайтов, кафе, салонов красоты, автомастерских и пр. 


Здесь вам пригодятся такие библиотеки, как TextBlob, Natural Language Toolkit, Gensim, spaCy, и StanfordNLP


8. Поисковый бот

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


Такой продукт будет украшением любого портфолио. А чтобы его создать, воспользуйтесь библиотеками BeautifulSoup и requests.


9. Бот для крипторынка или торговли акциями

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


Эта задача может оказаться сложной для начинающих программистов. Если кратко, необходимо написать ПО, которое получает 2 цены: текущую и предыдущую. Дальше создается модель machine learning,  которая будет предсказывать будущую стоимость. Когда бот справится с этими задачами, пользователю останется сравнить реальную цену с той, что в прогнозе. Если разница небольшая, идем на риск и торгуем!


Естественно, такой проект потребует много времени. Однако тех, кто одолеет поставленную задачу, точно ждет достойное рабочее место.



10. Мобильное приложение

Многие считают Python совершенно не подходящим для работы над мобильными приложениями. Но это ошибочное мнение. Есть большое количество библиотек, благодаря которым можно сделать отличный продукт такого рода. Например, Kivy — межплатформенная библиотека для написания приложений как для Android-смартфонов, так и для iPhone.

 

11. Пакет Python

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


Создавать такие пакеты не трудно. Хорошие руководства можно найти даже на YouTube.


Пару вариантов для воплощения в жизнь: 

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


12. Облегчение анализа данных 

Имея определенную базу знаний в сфере machine learning, вы наверняка что-то слышали про анализ данных. Именно с него начинаются все ML-проекты.


Если вам приходилось работать над программами, которые имеют отношение к Data Science, вы точно имеете представление о процессе подготовки данных. Как правило он включает в себя работу с отсутствующими значениями, анализ категориальных данных либо распределение данных на две выборки: обучающую и контрольную. Данные этапы присутствуют во всех моделях machine learning.


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


Чтобы воплотить в реальность такой проект, воспользуйтесь библиотекой streamlit. Она помогает создавать высококлассные приложения, экономя при этом время, т.к. программисту приходится писать меньше строк кода.


Итог

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

Больше интересных новостей

Комментарии для сайта Cackle