#статьи
-
0
От простеньких редакторов текста до мощных IDE и облачных платформ.
Иллюстрация: Оля Ежак для Skillbox Media
Филолог и технарь, пишет об IT так, что поймут даже новички. Коммерческий редактор, автор технических статей для vc.ru и «Хабра».
Со временем каждый Python-разработчик находит ту самую IDE, с которой больше не расстаётся и защищает во всех интернет-спорах. Одни уважают функциональность и выбирают мощный PyCharm, другие отдают дань традициям и пишут программы в консольном Neovim. Если вы ещё не решили, какой редактор кода подходит именно вам, или хотите попробовать новую среду разработки, то эта статья для вас. Мы собрали 10 лучших IDE для Python на любой вкус, чтобы вам было проще выбирать.
Содержание
- IDLE — среда разработки для новичков
- Visual Studio Code — универсальный редактор кода
- PyCharm — IDE для профессионалов
- Neovim — редактор кода для фанатов Vim
- Sublime Text — быстрый редактор кода
- Spyder — IDE для исследователей и аналитиков
- GNU Emacs — редактор с продвинутой кастомизацией
- Thonny — IDE для новичков
- Eclipse + PyDev — Python и Java в одном флаконе
- JupyterLab — среда разработки для data science
- Онлайн-редакторы
Язык интерфейса: английский.
Стоимость: бесплатно.
Платформы: Windows, macOS, Linux.
IDLE (Integrated Development and Learning Environment) — среда разработки, которая устанавливается на компьютер вместе с интерпретатором Python. Она предназначена для тех, кто только начинает изучать язык программирования.
В IDLE есть базовые функции, включая подсветку синтаксиса, интерактивные подсказки и автоматическое дополнение кода. Единственное, чего в ней нет, — набора продвинутых инструментов. Например, отладчика, анализатора, интеграций с фреймворками и менеджера виртуальных окружений — поэтому в IDLE будет сложно разрабатывать большие проекты.
Зато IDLE шустро работает даже на слабых компьютерах. Если вы только начинаете изучать Python или у вас не самый мощный ноутбук, то обязательно обратите внимание на IDLE.
Скачать IDLE
Язык интерфейса: русский, английский и другие.
Стоимость: бесплатно.
Платформы: Windows, macOS, Linux и веб.
Visual Studio Code — универсальный редактор кода от Microsoft. Его главная фишка — в кастомизируемости. Например, с помощью плагинов можно добавить поддержку Python, JavaScript, PHP или любого другого языка программирования. Дополнительные инструменты, чат-боты и темы — всё это есть в арсенале расширений.
Для комфортного программирования на Python в VS Code рекомендуем установить следующие плагины:
- Python — официальное расширение от Microsoft с поддержкой Python.
- Python Debugger — отладчик, который помогает искать ошибки в коде.
- Pylint — плагин для анализа кода.
- Autopep8 — инструмент для автоматической адаптации кода под стандарт PEP 8.
- Code Runner — плагин для удобного запуска кода в VS Code.
- Python Indent — утилита, которая следит за отступами.
Visual Studio Code доступна для Windows, Linux и macOS. Если надо срочно внести правки в код, но рядом нет рабочего ноутбука, то можно воспользоваться веб-версией редактора. Она работает в любых браузерах и даже на смартфонах.
Скачать Visual Studio Code
Язык интерфейса: русский, английский и другие.
Стоимость: 10 долларов в месяц за версию Professional, версия Community бесплатная.
Платформы: Windows, macOS и Linux.
PyCharm — многофункциональная IDE от JetBrains. Эту среду разработки создавали специально для программирования на Python. Помимо стандартных подсветки синтаксиса и подсказок, в PyCharm есть встроенная поддержка фреймворков Django и Flask, языка SQL для работы с базами данных и инструменты для взаимодействия с API.
Если встроенных функций не хватит, то можно установить плагины от сторонних разработчиков. Также в PyCharm есть встроенный ИИ-помощник, который ответит на ваши вопросы и поможет написать код.
PyCharm доступен в двух версиях: Professional и Community. Первая включает в себя все функции среды разработки и стоит 10 долларов в месяц, а вторая — бесплатная, но в ней нет поддержки популярных фреймворков. Также учитывайте, что для комфортной работы с PyCharm требуется минимум 8 ГБ оперативной памяти.
Скачать PyCharm
Язык интерфейса: английский.
Стоимость: бесплатно.
Платформы: Windows, macOS и Linux.
Neovim — форк легендарного консольного редактора Vim с улучшенной производительностью и расширенными возможностями кастомизации. Сам по себе Neovim — просто текстовый редактор, но с помощью плагинов его можно превратить в полноценную среду разработки на Python.
Главная преимущество Neovim в том, что он быстро работает и не нагружает систему. Если у вас слабый компьютер или вы устали от перегруженных интерфейсов современных IDE, то присмотритесь к этому редактору. Но предупреждаем сразу, что новичкам может быть сложно работать с Vim, поэтому лучше выбрать что-то из вариантов выше.
Скачать Neovim
Язык интерфейса: русский, английский и другие.
Стоимость: 99 долларов, есть пробная версия.
Платформы: Windows, macOS и Linux.
Sublime Text — текстовый редактор с подсветкой синтаксиса и удобными горячими клавишами на все случаи жизни. Главная фишка Sublime Text — в его скорости. Он быстро запускается и «без тормозов» открывает большие файлы.
Минус этого редактора в том, что он не может запускать код и в нём нет консоли для ручного запуска. Поэтому для комфортной работы на рабочем столе всегда надо открывать два окна: Sublime Text для редактирования кода и терминал для его запуска.
Sublime Text доступен для Windows, macOS и Linux. Полная версия редактора стоит 99 долларов, но есть пробный режим, который можно продлевать сколько угодно раз.
Скачать Sublime Text
Язык интерфейса: английский.
Стоимость: бесплатно.
Платформы: Windows, macOS и Linux.
Spyder — среда разработки для сложных математических расчётов на Python. IDE поставляется вместе с научными библиотеками SciPy, NumPy и Matplotlib, чтобы было удобно строить графики и работать со сложными уравнениями.
Если вы занимаетесь data science или аналитикой, то Spyder — одна из лучших сред разработки для этих задач. А ещё это полностью бесплатная IDE с открытым исходным кодом.
Скачать Spyder
Язык интерфейса: русский, английский и другие.
Стоимость: бесплатно.
Платформы: Windows, macOS, Linux и BSD.
GNU Emacs — кросс-платформенный редактор кода, первую версию которого разработал легендарный Ричард Столлман. GNU Emacs можно полностью настроить под себя с помощью Elisp — диалекта языка Lisp, который, к слову, был любимым языком RMS. Также есть готовые плагины для интеграции дополнительных функций.
GNU Emacs появился в 1970-х и считается одним из старейших редакторов кода. Он оказал влияние на современные кастомизируемые среды разработки. Большой выбор плагинов в Visual Studio Code и PyCharm — во многом заслуга GNU Emacs.
Этот редактор кода подойдёт опытным разработчикам, которые хотят полностью контролировать рабочий софт. Если авторы проекта не реализовали нужную функцию, то её можно добавить самому.
Скачать GNU Emacs
Язык интерфейса: русский, английский и другие.
Стоимость: бесплатно.
Платформы: Windows, macOS и Linux.
Thonny — минималистичная среда разработки на Python, ориентированная на новичков. У неё простой интерфейс и только самые необходимые функции. Thonny развивает Институт компьютерных наук Тартуского университета.
Главный плюс IDE — возможность быстрого старта работы. Thonny поставляется вместе с Python, поэтому можно просто скачать IDE и сразу же писать код. Но есть и минусы: иногда среда разработки выдаёт ошибки, которые бывает сложно исправить.
Thonny доступен для Windows, macOS и Linux, а с 2017 года по умолчанию входит в официальный дистрибутив Raspberry Pi OS — операционную систему для одноплатных компьютеров Raspberry Pi.
Скачать Thonny
Язык интерфейса: русский, английский и другие.
Стоимость: бесплатно.
Платформы: Windows, macOS и Linux.
Eclipse — бесплатная кросс-платформенная среда разработки, которую изначально создавали для Java. Со временем сторонние разработчики начали выпускать плагины для поддержки других языков программирования и Eclipse превратилась в универсальную IDE.
Поддержку Python можно добавить с помощью плагина PyDev. После его установки в Eclipse появится подсветка синтаксиса Python, отладчик, автоматическое дополнение кода и интеграция с фреймворком Django.
Скачать Eclipse
Язык интерфейса: английский.
Стоимость: бесплатно.
Платформы: Windows, macOS, Linux и веб.
JupyterLab — среда разработки для data science, в которой можно строить графики, анализировать данные и работать с интерактивными блокнотами Jupyter Notebook. JupyterLab поставляется со всеми необходимыми инструментами и библиотеками.
Помимо Python, среда разработки официально поддерживает Julia и R — популярные языки программирования для анализа данных. С помощью модулей от энтузиастов в IDE можно интегрировать и другие языки, включая JavaScript, PHP, Go и TypeScript.
Главная фишка JupyterLab — интерактивные блокноты. Это специальные файлы, в которых можно выполнять код, добавлять к нему текст, картинки, формулы и графики. Это особенно полезно исследователям, которым важно, чтобы вся информация была перед глазами, а не в разных файлах проекта.
Скачать JupyterLab
Помимо десктопных редакторов кода, есть онлайн-платформы для разработки на Python. Например, с их помощью можно программировать на смартфоне. Ниже рассмотрим популярные онлайн-редакторы.
Язык интерфейса: английский.
Стоимость: бесплатно.
Online Python — онлайн-редактор кода на Python с простым интерфейсом. С его помощью можно прямо в браузере написать код, выполнить его и посмотреть результат. Готовый проект можно сохранить в память компьютера. Сервис полностью бесплатный.
Попробовать онлайн
Язык интерфейса: английский.
Стоимость: от 10 долларов в месяц, есть бесплатный тариф.
Google Colab — это облачная версия интерактивных блокнотов Jupyter Notebook, развёрнутая на серверах Google. Код можно писать и выполнять в браузере, а если не хватит мощности для запуска проекта, например для анализа большого объёма данных, то можно арендовать дополнительные вычислительные мощности.
Подписка на Google Colab стоит от 10 долларов в месяц. Она позволяет производить больше вычислений и на более мощном железе. Есть бесплатный тариф, но с ним код ваших блокнотов будет храниться в облаке Google всего 12 часов.
Попробовать онлайн
Бесплатный курс по Python ➞
Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе.
Смотреть программу
Львиную долю своего рабочего времени программисты проводят в редакторах кода. В такой ситуации комфортность и удобство рабочей среды трудно переоценить. Конечно, писать код можно и в простейшем текстовом редакторе и сохранять в .html, но с продвинутым редактором это не сравнится. Особенно если редактор ориентирован на конкретный язык. Так как питон был и остается основным языком, используемым в Data Science, и именно ему мы уделяем особое внимание на наших курсах, делимся с вами переводом статьи, автор которой пишет о знакомых ему редакторах и о том, что он считает привлекательным в них.
Примечание автора: каждый упомянутый в этой статье редактор хорош по-своему. Список — это только краткое руководство, основанное на моем личном опыте. Одни редакторы могут нравиться вам больше других. В конце концов, выбор редактора или среды разработки за вами. Нет неправильного или правильного выбора.
1. Python IDLE
IDLE — редактор, поставляемый вместе с Python. Это базовый, упрощенный режим программирования на Python. Тем не менее, IDLE хороший редактор для начала программирования и понимания основ языка. В нем есть оболочка Python — интерактивный интерпретатор. Его возможности обширны: автозавершение кода, подсветка синтаксиса, подбор отступа и базовый встроенный отладчик.
Плюсы:
- Легкий.
- Подходит для начинающих.
Минусы:
- Не подходит сложным проектам.
- Не хватает продвинутых функций.
2. Sublime Text
Sublime Text — свободное программное обеспечение с широкой поддержкой сообщества. Редактор работает с несколькими языками программирования. В большинстве случаев можно использовать незарегистрированный Sublime Text, но время от времени вы будете получать всплывающее окно с просьбой зарегистрировать продукт и приобрести лицензию. Sublime Text тонко настраивается и дополняется пакетами для отладки, автозавершения кода, линтинга и т.д.
Плюсы:
- Простой и по большей части бесплатный.
- Тонко настраивается.
- Компактный и эффективный.
Минусы:
- Для удобства требует дополнительных пакетов.
3. Visual Studio Code
Visual Studio Code — бесплатный редактор кода от Microsoft для Windows, Linux и MacOS. Его возможности — отладка, подсветка синтаксиса, интеллектуальное завершение кода, предопределённые фрагменты кода, рефакторинг и интеграция с Git. Поддерживаются различные языки программирования. Для начала работы с Python может понадобиться несколько дополнительных пакетов, но установить их довольно просто. Редактор постоянно обновляется. Visual Studio Code — один из лучших редакторов не только для Python, но и для других языков программирования. Я часто пользуюсь VSC и очень рекомендую его.
Плюсы:
- Это фантастическая платформа с непрерывными обновлениями.
- Потребляет немного памяти по сравнению с другими громоздкими инструментами разработки.
- Имеет встроенный терминал и прост в использовании.
Минусы:
- Иногда терминал работает не так, как хотелось бы.
4. Jupyter Notebook
Jupyter Notebook — это веб-приложение с открытым исходным кодом, позволяющее создавать документы с выполняемым интерактивно кодом, уравнениями, визуализациями, простым текстом. Конечно, такими документами просто поделиться. Jupyter Notebook используется для очистки и преобразования данных, численного и статистического моделирования, визуализации данных, машинного обучение и многого другого. Этот редактор — хороший вариант для начала работы с наукой о данных и машинным обучением. Файлами можно поделиться с кем угодно, они помогают эффективнее работать с кодом. Я настоятельно рекомендую Jupyter Notebook, поскольку можно работать с каждым блоком кода отдельно. Также есть возможность использовать разметку. Среда Jupyter Notebook широко используется во многих успешных компаниях.
Плюсы:
- Лучшая платформа для начала работы с наукой о данных.
- Легко делиться файлами и визуализациями.
- Разметка и другие дополнительные функции.
Минусы:
- Нет мощных функций из некоторых IDE.
5. PyСharm
PyCharm — это интегрированная среда разработки специально для Python. Разработана чешской [прим. перев. — автор ориентируется на расположение головного офиса] компанией JetBrains. Редактор разработан специально для Python, так что имеет широкий набор возможностей, таких как автозавершение и инспекции кода, подсветка ошибок, исправления, отладка, система контроля версий и рефакторинг. IDE доступна на Microsoft Windows, Linux и MacOS. Есть бесплатная и платная профессиональная версии. Профессиональная IDE имеет несколько дополнительных функций, но бесплатной версии достаточно для большинства задач. Я настоятельно рекомендую PyCharm, если у вас есть как минимум 8 Гб оперативной памяти.
Плюсы IDE:
- Имеет важные встроенные функции.
- Разработана профессионалами специально для Python.
- Поддерживает виртуальные среды Anaconda.
Минусы:
- Основная проблема PyCharm: если у вас недорогой ПК или ноутбук и в нем нет 8 Гб оперативной памяти, то IDE немного притормаживает и работает довольно медленно.
6. Thonny
IDE Thonny предустановлена на системы Linux и системы на ее основе. Мой опыт работы с этим редактором в основном связан с Raspberry Pi. Это отличная, простая среда разработки для начинающих. Thonny хорошо подходит Raspberry Pi. Некоторые возможности: подсветка синтаксических ошибок, отладчик, автозавершение кода, пошаговое вычисление выражений.
Плюсы:
- Интерактивная среда.
- Подходит для начинающих.
- Может использоваться для проектов Raspberry Pi.
Минусы:
- Редактор склонен к проблемам.
- Имеет не очень много возможностей.
7. Spyder
Spyder — это мощная научная интегрированная среда программирования, написанная на Python, для Python. Она разработана учеными, инженерами и аналитиками данных для них самих. Spyder обладает уникальным сочетанием возможностей. Продвинутое редактирование, анализ, отладка и профилирование сочетается с возможностями исследования данных, интерактивного выполнения, глубокой инспекции кода и красивой визуализацией. Установить Spyder просто: скачайте его как часть дистрибутива Anaconda. Разработчики рекомендуют последнюю 64-битную версию Python 3, если у вас нет особых требований.
Плюсы:
- Бесплатный редактор, поставляется с Anaconda.
- Хорошее рабочее окружение для просмотра интерпретаций и кодирования в два окна.
- Широкий выбор опций исключительно для Python.
Минусы:
- Немного старый интерфейс.
8. Atom
Эта IDE похожа на текстовый редактор Sublime. Она очень настраиваемая и поддерживает многие необходимые пакеты. У меня меньше опыта работы с этим редактором, поэтому я рекомендую скорее Sublime Text, чем Atom. Но перечислю некоторые часто используемые пакеты Atom для разработки на Python: autocomplete-python
, linter-flake8
, python-debugger
.
Плюсы:
- Работать с Atom легко.
- Поддерживает Python после дополнительных установок.
Минусы:
- Требуется дополнительный плагин для Python.
- Больше подходит для работы с git.
9. VIM
Vim — это текстовый редактор, предустановленный в системах MacOS и UNIX. Большинство экспертов любят vim за развитые вычислительные возможности и легкую, компактную среду разработки. Он не рекомендуется начинающим, так как изучать его трудно. Можно добавить плагины подсветки синтаксиса, автозавершения кода, отладки, рефакторинга и другие к Vim и использовать его как Python IDE. [Прим. перев. На скриншоте GVim — версия Vim с графическим интерфейсом].
Плюсы:
- Легкий.
- Эффективный.
- Производительный.
Минусы:
- Нужно посвятить время изучению редактора, у него крутая кривая обучения.
10. Notepad++
Notepad++ — это редактор текста и исходного кода, работающий на Microsoft Windows. Поддерживается редактирование с вкладками, что позволяет работать с несколькими открытыми файлами в одном окне. Название проекта происходит от оператора инкремента языка С. Notepad++ распространяется как свободное программное обеспечение. Редактор поддерживает множество языков программирования и может быть полезным. На мой взгляд, есть и лучшие варианты. Кроме того, нужно установить дополнительные пакеты, чтобы сделать редактор функциональным для программирования на Python.
Плюсы:
- Заменяет блокнот.
- Может использоваться для нескольких языков программирования, включая Python.
Минусы:
- Требуется дополнительная настройка и установки плагинов, чтобы работать с Python.
- Не в топе рекомендаций: есть много вариантов получше.
11. Онлайн редакторы
На Programiz, tutorials point, w3schools и некоторых других сайтах есть редакторы с удивительными возможностями.
Плюсы:
- Никаких дополнительных установок и настроек.
- Простой код запускается без особых хлопот.
Минусы:
- Не такие мощные, как IDE.
Это был длинный список. Я охватил почти все редакторы из моего опыта работы. Самое смешное: есть вероятность, что я многое упустил. Есть множество настраиваемых, удобных пользователям редакторов. Также сегодня существует множество облачных IDE именно в онлайне. GitHub работает над Codespaces — облачной версией VSCode. И Vim настраивается так гибко, что может иметь множество других плюсов и минусов.
Расскажите, в каком редакторе для Python вы пишете код и почему?
![]()
Узнайте больше здесь.
Получить востребованную профессию с нуля или Level Up по навыкам и зарплате можно, пройдя онлайн-курсы SkillFactory:
- Курс «Python для веб-разработки»
- Профессия Веб-разработчик
- Обучение профессии Data Science с нуля
- Онлайн-буткемп по Data Science
- Онлайн-буткемп по Data Analytics
- Профессия аналитика с любым стартовым уровнем
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
А какой из перечисленных редакторов вы считаете самым удобным для Python?
25.47% Visual Studio Code297
5.4% Свой вариант (напишу в комментариях)63
Проголосовали 1166 пользователей. Воздержались 259 пользователей.
Skip to main content
Microsoft
Писать на Python, используя IDLE или Python Shell, вполне удобно, если речь идёт о простых вещах, однако с ростом размеров проектов программирование превращается в мучение. С помощью IDE или даже хорошего редактора кода можно значительно упростить себе жизнь. Но вот вопрос — что выбрать?
В этой статье мы пройдёмся по основным инструментам, позволяющим писать на Python. Мы не выберем за вас лучший вариант, но рассмотрим «за» и «против» каждого и поможем сделать взвешенное решение.
- Что такое IDE и редактор кода?
- Требования к хорошей среде разработки
- Редакторы и IDE с поддержкой Python
- Редакторы и среды разработки, написанные на Python
- Так какую Python IDE выбрать?
IDE (или интегрированная среда разработки) — это программа, предназначенная для разработки программного обеспечения. Как следует из названия, IDE объединяет несколько инструментов, специально предназначенных для разработки. Эти инструменты обычно включают редактор, предназначенный для работы с кодом (например, подсветка синтаксиса и автодополнение); инструменты сборки, выполнения и отладки; и определённую форму системы управления версиями.
Большинство IDE поддерживают множество языков программирования и имеют много функций, из-за чего могут быть большими, занимать много времени для загрузки и установки и требуют глубоких знаний для правильного использования.
С другой стороны, есть редакторы кода, которые представляют собой текстовый редактор с подсветкой синтаксиса и возможностями форматирования кода. Большинство хороших редакторов кода могут выполнять код и использовать отладчик, а лучшие даже могут взаимодействовать с системами управления версиями. По сравнению с IDE, хороший редактор кода, как правило, легковесней и быстрее, но зачастую ценой меньшей функциональности.
Требования к хорошей среде разработки
Итак, что нам нужно от среды разработки? Набор функций разных сред может отличаться, но есть набор базовых вещей, упрощающих программирование:
- Сохранение файлов. Если IDE или редактор не дают вам возможности сохранить работу и позже всё открыть в том же состоянии, в котором оно было во время закрытия, то не такая уж это и IDE.
- Запуск кода из среды. То же самое, если вам нужно выйти из среды для запуска кода, то это не более, чем простой текстовый редактор.
- Поддержка отладки. Возможность пошагово выполнить код является базовой функцией всех IDE и большинства хороших редакторов кода.
- Подсветка синтаксиса. Возможность быстро найти ключевые слова, переменные и прочее делает чтение и понимание кода на порядок проще.
- Автоматическое форматирование кода. Любой редактор или IDE, который действительно таковым является, распознает двоеточие после while или for выражения и автоматически сделает отступ на следующей строке.
Разумеется, есть множество других функций, от которых вы бы не отказались, но приведённые выше — основные функции, которыми должна обладать хорошая среда разработки.
А теперь давайте взглянем на некоторые инструменты общего назначения, которые можно использовать для разработки на Python.
Редакторы и IDE с поддержкой Python
Eclipse + PyDev
Тип: IDE
Сайт: www.eclipse.org
PyDev: www.pydev.org
Если вы близки с open-source сообществом, то вы наверняка слышали об Eclipse. Будучи доступным для Linux, Windows и OS X, Eclipse де-факто является open-source IDE для разработки на Java. Существует множество расширений и аддонов, которые делают Eclipse полезным для разного рода задач.
Одним из таких расширений является PyDev, предоставляющий интерактивную консоль Python и возможности для отладки и автодополнения кода. Установить его просто: запустите Eclipse, выберите Help → Eclipse Marketplace, затем найдите PyDev. Нажмите «Install» и при необходимости перезапустите Eclipse.
Преимущества: если у вас уже был установлен Eclipse, то установка PyDev пройдёт быстро и гладко. У опытного пользователя Eclipse не возникнет проблем с изучением этого расширения.
Недостатки: если вы только начинаете изучать Python или разработку в целом, Eclipse может стать непосильной ношей. Помните, мы говорили, что IDE большие и требуют больше опыта для полноценного использования? Всё это можно сказать об Eclipse.
Sublime Text
Тип: редактор кода
Сайт: http://www.sublimetext.com
Sublime Text, написанный инженером из Google с мечтой о лучшем текстовом редакторе, является весьма популярным редактором кода. Доступный на всех платформах, Sublime Text имеет встроенную поддержку редактирования Python-кода, а также богатый набор расширений, называемых пакетами, которые расширяют возможности синтаксиса и редактирования.
Установить дополнительный Python-пакет может быть непросто — все пакеты Sublime Text написаны на Python, поэтому для установки пакетов сообщества зачастую может потребоваться выполнить Python-скрипт непосредственно в редакторе.
Преимущества:у Sublime Text большое количество поклонников. Как редактор кода, Sublime Text быстрый, лёгкий и имеет хорошую поддержку.
Недостатки: Sublime Text не является бесплатным, хотя вы можете использовать пробный период сколько угодно. Установка расширений может превратиться в тот ещё квест. Кроме того, в редакторе нет поддержки отладки и запуска кода.
Atom
Тип: редактор кода
Сайт: https://atom.io/
Доступный на всех платформах Atom называют «хакабельным текстовым редактором 21 века». Atom написан с использованием Electron — фреймворка для создания кроссплатформенных приложений для десктопа средствами JavaScript, HTML и CSS — и имеет множество расширений. Поддержку Python можно также подключить с помощью расширения, которое можно установить прямо в Atom.
Преимущества: поддержка на всех платформах благодаря Electron. Atom лёгкий и быстро скачивается и загружается.
Недостатки: поддержка сборки и отладки не встроенная, а добавляется с помощью расширений. Поскольку Atom написан с помощью Electron, он всегда работает как JavaScript-процесс, а не как нативное приложение.
GNU Emacs
Тип: редактор кода
Сайт: https://www.gnu.org/software/emacs/
Задолго до войны iPhone с Android, до войны Linux с Windows, даже до войны PC с Mac была война редакторов с GNU Emacs в качестве одного из участников военных действий. Описываемый как «расширяемый, настраиваемый, самодокументированный текстовый редактор», GNU Emacs существует почти столь же долго, сколько и UNIX, и успел завоевать немало поклонников.
Доступный бесплатно на каждой платформе (в той или иной форме) GNU Emacs использует язык Lisp для кастомизации. Само собой, для Python тоже найдутся скрипты кастомизации.
Преимущества: вы знакомы с Emacs, вы используете Emacs, вы любите Emacs. Lisp — ваш второй язык, и вы знаете, что с ним вы способны на всё.
Недостатки: кастомизация подразумевает написание (или копипасту) Lisp-кода в различные скрипты. Если таковых не имеется, то вам, возможно, придётся изучить Lisp, чтобы со всем разобраться.
Vi / Vim
Тип: редактор кода
Сайт: https://www.vim.org/
По другую сторону баррикад в войне редакторов находится VI/VIM. Доступный по умолчанию на почти каждой UNIX-системе и Mac OS X, VI завоевал не меньшее количество поклонников. VI и VIM — модальные редакторы, которые отделяют просмотр файла от его редактирования. VIM включает в себя всё, что есть в VI, плюс некоторые усовершенствования вроде доступности расширений. Для разного рода Python-задач можно воспользоваться VIMScripts.
Преимущества: вы знакомы с VI, вы используете VI, вы любите VI. VIMScripts вас не пугают, и вы знаете, как подчинить их своей воле.
Недостатки: как и в случае с Emacs, вам не очень удобно искать или писать скрипты для добавления возможности разработки под Python, и вы не имеете ни малейшего понятия, как вообще должен работать модальный редактор.
Visual Studio
Тип: IDE
Сайт: https://www.visualstudio.com/vs/
Python-расширение: Python Tools for Visual Studio, aka PTVS
Visual Studio — полнофункциональная IDE от Microsoft, которая во многом сопоставима с Eclipse. Доступная на Windows и Mac OS, Visual Studio представлена как в бесплатном (Community), так и в платном (Professional и Enterprise) вариантах. Visual Studio позволяет разрабатывать приложения для разных платформ и предоставляет свой собственный набор расширений.
Python Tools for Visual Studio (PTVS) позволяет писать на Python в Visual Studio и включает в себя Intellisense для Python, отладку и другие инструменты.
Преимущества: как и в случае с Eclipse, если у вас уже установлена Visual Studio для других задач, установка PTVS пройдёт без проблем.
Недостатки: как и в случае с Eclipse, Visual Studio будет многовато, если вам нужен только Python. Кроме того, если вы пользуетесь Linux, то вы в пролёте — Visual Studio для этой платформы нет.
Visual Studio Code
Тип: редактор кода
Сайт: https://code.visualstudio.com/
Python tools: https://marketplace.visualstudio.com/items?itemName=ms-python.python
Visual Studio Code (не путать с Visual Studio) — полнофункциональный редактор кода, доступный на Windows, Linux и Mac OS X. VS Code является расширяемым open-source редактором, который можно настроить под любую задачу. Как и Atom, VS Code построен на Electron, поэтому у него есть те же преимущества и недостатки.
Добавить поддержку Python в VS Code проще простого — выполните поиск по запросу «Python» в Marketplace, нажмите «Install» и перезапустите редактор, если потребуется. VS Code автоматически определит интерпретатор Python и установленные библиотеки.
Преимущества: благодаря Electron, VS Code доступен на всех платформах с удивительно большой функциональностью. Кроме того, исходники можно найти в открытом доступе.
Недостатки: раз замешан Electron, значит VS Code не нативное приложение. Кроме того, некоторым людям религия не позволяет пользоваться продуктами Microsoft.
Редакторы и среды разработки, написанные на Python
PyCharm
Тип: IDE
Сайт: https://www.jetbrains.com/pycharm/
Одной из лучших полнофункциональных IDE, предназначенных именно для Python, является PyCharm. Существует как бесплатный open-source (Community), так и платный (Professional) варианты IDE. PyCharm доступен на Windows, Mac OS X и Linux.
PyCharm «из коробки» поддерживает разработку на Python напрямую — откройте новый файл и начинайте писать код. Вы можете запускать и отлаживать код прямо из PyCharm. Кроме того, в IDE есть поддержка проектов и системы управления версиями.
Преимущества: это среда разработки для Python с поддержкой всего и вся и хорошим коммьюнити. В ней «из коробки» можно редактировать, запускать и отлаживать Python-код.
Недостатки: PyCharm может медленно загружаться, а настройки по умолчанию, возможно, придётся подкорректировать для существующих проектов.
Spyder
Тип: IDE
Сайт: https://github.com/spyder-ide/spyder
Spyder — open-source IDE для Python, оптимизированная для data science. Spyder идёт в комплекте с менеджером пакетов Anaconda, поэтому вполне возможно, что он у вас уже установлен.
Что в Spyder интересно, так это то, что его целевой аудиторией являются data scientist’ы, использующие Python. Например, Spyder хорошо взаимодействует с такими библиотеками для data science, как SciPy, NumPy и Matplotlib.
Spyder обладает той функциональностью, которую вы можете ожидать от стандартной IDE, вроде редактора кода с подсветкой синтаксиса, автодополнения кода и даже встроенного обозревателя документации.
Отличительной особенностью Spyder является наличие проводника переменных. Он позволяет просмотреть значения переменных в форме таблицы прямо внутри IDE. Также хорошо работает интеграция с IPython/Jupyter.
Про Spyder можно сказать, что он более «приземлённый», чем другие IDE. Его можно рассматривать как инструмент для определённой цели, а не как основную среду разработки. Что в нём хорошо, так это, что он бесплатный, open-source и доступный на Windows, macOS и Linux.
Преимущества: вы data scientist, который пользуется Anaconda.
Недостатки: более опытные разработчики на Python могут найти Spyder недостаточно функциональным для повседневной работы и сделают свой выбор в пользу более функциональной IDE или редактора.
Thonny
Тип: IDE
Сайт: http://thonny.org/
Thonny называют IDE для новичков. Написанный и поддерживаемый Институтом информатики Тартуского университета в Эстонии, Thonny доступен на всех основных платформах.
По умолчанию Tonny устанавливается с версией Python, идущей в комплекте, поэтому вам не понадобится устанавливать ещё что-нибудь. Продвинутым пользователям, возможно, придётся изменить эту настройку, чтобы IDE нашла и использовала уже установленные библиотеки.
Преимущества: вы начинающий Python-программист и вам нужна IDE, с которой можно сразу идти в бой.
Недостатки: продвинутым пользователям будет недостаточно функциональности, а встроенный интерпретатор они заменят. Кроме того, учитывая новизну IDE, могут возникнуть проблемы, решения которых на данный момент нет.
Так какую Python IDE выбрать?
Решать только вам, но вот пара рекомендаций:
- Начинающим питонистам следует взять что-то с наименьшими возможностями кастомизации. Чем меньше препятствий, тем лучше;
- Если вы уже пользуетесь каким-нибудь редактором для других задач, то посмотрите в сторону редакторов кода;
- Ну а если у вас уже стоит IDE для другого языка, то попробуйте добавить в неё поддержку Python.
Смотрите также подборку материалов по Python для начинающих. Интересуетесь ещё и вебом? Тогда загляните в нашу аналогичную подборку IDE для веб-разработки.
Рассказываем про интегрированные среды разработки и редакторы кода, помогаем выбрать подходящий инструмент
Если у вас на компьютере установлен язык программирования (компилятор или интерпретатор), можно писать код даже в Блокноте, а затем исполнять его через консоль. Но это неудобно. Разработчики пользуются редакторами кода или IDE — интегрированными средами разработки. Так называется комплекс программных средств для кодинга: в них можно писать, редактировать, исполнять и отлаживать код.
Мы поговорим о таких средствах для Python. Это популярный язык программирования, который применяется во множестве отраслей: от веба до прикладной математики. Поэтому инструменты многочисленны и разнообразны.
Узнать о нем больше можно в нашей статье Кому и для чего нужен Python?
IDE и редактор кода для Python: в чем разница
Итак, существует два вида ПО для кодинга: IDE и редактор кода. Они похожи с первого взгляда, но сильно различаются возможностями.
- Редактор кода — это простая легковесная программа, которая похожа на текстовый редактор, только больше адаптированная под написание кода. Она сохраняет проекты в нужном расширении, подсвечивает синтаксис и автоматически проверяет отступы в коде.
- IDE — более масштабный инструмент, программный комплекс. Помимо редактора в нем есть собственная консоль, инструменты для запуска, тестирования и отладки кода. Через IDE можно создавать крупные проекты, подключать систему контроля версий (Git). Некоторые IDE позволяют устанавливать внутри себя новые фреймворки и библиотеки, не заходя в терминал системы.
Пройдите тест и узнайте, какой вы аналитик данных и какие перспективы вас ждут. Ссылка в конце статьи.
Чем редактор кода и IDE отличается от текстового редактора
Редактор кода — это или самостоятельная программа, или часть IDE. Он выглядит как окно, где можно набрать текст, но более адаптирован под код.
Подсветка синтаксиса. Это означает, что, например, служебные слова будут одного цвета, комментарии — другого, классы будут выделяться другим начертанием и так далее. Это помогает быстрее ориентироваться в коде и находить нужные места. Более того, большинство существующих инструментов используются для нескольких языков программирования, поэтому знают синтаксис не только Python. При создании файла можно выбрать, на какой язык будет ориентироваться подсветка. Также программа может понять это самостоятельно по расширению файла.
Форматирование и установка отступов. Отступы используются практически во всех языках программирования, но в Python они обязательны и являются частью синтаксиса. Редакторы обычно умеют поддерживать и ставить нужные отступы автоматически. Но это только малая часть. Хорошие IDE и редакторы поддерживают более масштабное автоформатирование. например, во многих редакторах есть спеллчекеры — они показывают, если что-то написано неправильно, и обращают внимание пользователя на ошибку. Также есть инструменты, которые автоматически дополняют команды и функции из кода.
Возможность запуска кода. Изначально запуск кода был прерогативой IDE, но в некоторых редакторах есть возможность запуска написанного кода в консоли непосредственно из него. Не нужно выходить из редактора и открывать терминал, все запустится автоматически нажатием соответствующей кнопки в редакторе.
Создание, редактирование и сохранение файлов. Большинство редакторов и практически все IDE могут показывать структуру файлов в папке. Обычно это нужно для проектов, которые включают больше одного файла. Прямо внутри среды можно переключаться между файлами, создавать новые в папках и подпапках, сохранять изменения. Более того, многие приложения поддерживают системы контроля версий вроде Git и дают возможность делать коммиты прямо из среды, причем это умеют не только IDE, но и некоторые редакторы.
Отладка. Это процесс нахождения и исправления ошибок. Чтобы это можно было сделать быстрее, существуют расширенные возможности: пошаговое выполнение кода, остановка исполнения в определенной точке, просмотр содержимого переменных в любой момент времени и многое другое. Все это входит в функционал инструментов отладки.
Кастомизация. Любую IDE и почти любой редактор можно настроить под себя. Это не только цветовая гамма и размеры шрифта, но и расположение окон и кода, панели под рукой, горячие клавиши и многое другое. Некоторые инструменты поддерживают дополнения — сторонние расширения, дополняющие функциональность. Их можно установить в IDE или даже в редактор. Например, браузерные расширения или возможность по-новому редактировать код или дополнять слова.
Что содержится в IDE для написания программ на «Питоне»
В редакторах есть все инструменты для начального уровня работы с кодом, и часто их бывает достаточно. Рассмотрим отдельные возможности, которые предоставляют IDE:
- визуальный редактор для быстрого создания проектов из блоков и отдельных файлов;
- полная синхронизация с системой контроля версий;
- интерактивная консоль;
- дополнительные инструменты для того или иного направления IT;
- множество возможностей для наглядной отладки, тестирования, анализа кода, а также решения различных задач;
- возможность установить фреймворк или библиотеку через интерфейс среды;
- возможность работать с несколькими языками программирования, в том числе одновременно.
Кому-то будет удобнее работать с простым и не занимающим много памяти редактором, а кому-то — с масштабной IDE со множеством дополнительных возможностей.
Популярные IDE для Python
PyCharm
Отличный вариант как для начинающих, так и для продвинутых программистов. У PyCharm понятный интерфейс, она изначально адаптирована под Python. Ее не придется долго донастраивать, чтобы код просто запустился, — можно установить Python IDE и сразу начать работать. Среда отлично поддерживает всевозможные дополнения и дает огромный простор действий. Но загружается и работает она все же медленнее, чем средний редактор.
PyCharm существует в платной коммерческой и бесплатной комьюнити-версии. Бесплатной хватает большинству начинающих программистов, а коммерческая нужна в основном компаниям и профессионалам, работающим с большими проектами.
Spyder
Это бесплатная опенсорсная IDE для Python с важным нюансом: она рассчитана на разработку в сфере Data Science. В ней есть много инструментов и оптимизаций для работы с данными, но для других задач она подходит не так хорошо. Например, Spyder «из коробки» включает пакетный менеджер Anaconda, который используется в анализе данных и машинном обучении. Он хорошо и быстро работает с библиотеками для математики и ML. Кроме того, за него не надо платить, а основные функции IDE в нем есть.
Минус в том, что это специализированный инструмент — разработчикам вне науки о данных и машинного обучения он может показаться недостаточно удобным.
Python IDLE
Эта среда по умолчанию поставляется с Python. Она написана на нем, имеет все возможности интегрированной среды разработки, проста и минималистична. С ней можно начать писать программы на «Питоне», но для дальнейшей работы, скорее всего, будет удобнее другой, более масштабный инструмент.
Интересный факт: как язык Python был назван в честь комик-группы «Монти Пайтон», так и IDLE назвали в честь одного из участников этой группы — Эрика Айдла.
Thonny
Еще один вариант для начинающих, простой, но функциональный. Эта IDE уже включает в себя нужную разработчику версию Python и не требует сложных дополнительных настроек. Ее называют Python IDE for beginners — это определение дали среде ее разработчики.
Для начинающих Thonny действительно подойдет: в ней легко разобраться, она бесплатная и понятная. Но для тех, кому нужна расширенная функциональность, ее будет недостаточно.
Мультиязычные IDE с поддержкой Python
Существует как минимум две IDE, изначально созданные для других языков, но поддерживающие в данный момент и Python. Такие IDE будут полезны тем, кто работает с несколькими языками одновременно.
Visual Studio
Мощная мультиязычная среда от Microsoft. Она гибко настраивается под задачи, включает инструменты для написания кода под множество платформ и направлений. VS поддерживает C/C++, Java, Python, JavaScript и TypeScript и пр. Ей пользуются для веба, для написания приложений под ПК и мобильные устройства, для создания программ под разные операционные системы. В ней есть все, что нужно любому разработчику, а дополнительные модули расширяют функциональность среды под конкретные задачи. В VS есть и инструменты для сборки интерфейсов, и отладка, и ПО для рефакторинга или дополнения слов.
Чтобы работать с Python в Visual Studio, понадобится расширение Python Tools for Visual Studio. Все расширения официальные и бесплатные, их можно скачать с сайта. Для различных конкретных задач существуют разные сборки VS. Есть и продвинутые платные версии среды, но для начинающих и любителей будет достаточно бесплатной Community-версии.
Eclipse
Изначально IDE использовалась для Java, но сейчас она позволяет работать и с Python — для этого понадобится установить расширение PyDev. По функциональности Eclipse сравнима с VS, но, в отличие от нее, опенсорсная и полностью бесплатная, разрабатывается при поддержке сообщества энтузиастов.
Обе среды очень масштабные. Они позволяют одновременно писать код на Python, создавать интерфейс, работать с SQL Server, создавать проекты на нескольких языках программирования и т.д., но у новичков могут вызвать затруднения. Большинство инструментов нужны или профессиональным разработчикам, или тем, кто пользуется не одним языком.
Редакторы кода для Python и других языков
Sublime Text
В теории это платный редактор, но на практике необходимость платить выражается только в баннере в интерфейсе — ПО работает и без оплаты. Sublime легкий, удобный и быстрый, подходит для большинства платформ, хорошо поддерживается сообществом. Для него есть множество пакетов, которые позволяют расширять и дополнять поддержку синтаксиса.
Но Sublime Text — только редактор. В отличие от других двух программ из списка, он не умеет запускать и отлаживать код. Это плата за легковесность и возможность быстро работать в любой ОС.
Visual Studio Code
Как и Visual Studio, редактор разработал Microsoft. Но его идея совсем другая — это небольшой и емкий инструмент. Для него существует множество плагинов, написанных разными разработчиками, он полностью бесплатный. Visual Studio Code можно настроить под любой язык — нужно скачать расширения, доступные в маркетплейсе внутри самого редактора.
VS Code не такой легкий, как Sublime Text. Он более функционален, в нем есть инструменты для запуска и отладки и интеграция с системой контроля версий. Но он весит больше и медленнее работает.
VS Code написан на фреймворке Electron. Это инструмент, который позволяет создавать приложения под разные ОС с помощью HTML, CSS и JavaScript. Это удобно, но из-за этого любое Electron-приложение, по сути, работает внутри специального браузера. Оно взаимодействует с системой напрямую, поэтому сильнее нагружает мощности компьютера, чем нативное (которое оптимизировано под конкретную ОС, поэтому может работать корректнее и быстрее).
Atom
Этот редактор кода создала компания GitHub. Он многофункциональный, с удобным интерфейсом и широкими возможностями для настройки под себя. Его хвалят за визуальную ориентированность: понятную структуру папок, множество тем и настроек интерфейса. Он мало весит, при этом в нем есть встроенный менеджер пакетов и много других фишек. Из минусов — разработчики отмечают, что Atom работает медленнее аналогов. Редактор бесплатный, его можно легко скачать из официального репозитория на GitHub.
GNU Emacs
Emacs — общее название для семейства расширяемых текстовых редакторов. Расширяемых — потому что для них можно скачать дополнения и плагины, способные превратить их в полноценные редакторы кода. Конкретно GNU Emacs — свободный и бесплатный редактор. Его разработал и поддерживает проект GNU. В нем множество функций и горячих клавиш, которые при необходимости можно изменять и дорабатывать. Расширения для Emacs есть в сети, но так как у GNU-версии открытый исходный код, разработчик при желании может написать дополнения самостоятельно. Интерфейс довольно простой, а сам редактор легкий, но при этом функций и возможностей в нем достаточно. Обычно его используют в Unix-системах, например Linux или macOS.
Vi / Vim
«Научиться выходить из Vim» — локальная шутка в среде разработчиков. И правда: этот бесплатный редактор, изначально текстовый, довольно сложен в освоении. Он тоже предназначен для Unix-систем, встроен в ОС Linux, и его всегда можно открыть через командную строку. Интерфейс у редактора консольный: в нем можно работать прямо из терминала. Команды для управления редактором — наборы горячих клавиш, которые нужно помнить, чтобы полноценно работать с Vim. Интересная особенность редактора — наличие нескольких режимов работы:
- режим управления через горячие клавиши;
- режим дописывания текста;
- режим выделения и вставки и так далее.
Всего режимов 12, и новичку бывает легко в них запутаться. У Vim высокий порог входа. Но опытные разработчики уверяют: если научиться пользоваться редактором, он окажется удобным, мощным и многофункциональным инструментом.
Notepad++
Редактор, который можно использовать для написания текста и кода на «Пайтон». Он очень простой: интерфейс похож на обычный «Блокнот», только функций больше. Например, Notepad++ «понимает» и графически выделяет синтаксис огромного количества языков программирования, даже редких. Он легкий, быстрый и бесплатный, к нему можно скачать и установить дополнения, которые покроют отсутствующие функции. Но Notepad++ менее функционален, чем редакторы, предназначенные специально для написания кода. Хотя это хороший инструмент, чтобы писать короткие скрипты, или при необходимости кодить за чужим компьютером без установки более сложного ПО.
Онлайн-редакторы
Если ничего устанавливать не хочется, можно воспользоваться многочисленными онлайн-редакторами кода. Они бывают мультиязычными, как Repl.it, и предназначенными специально для Python, например online-python. Такие программы открываются в браузере как обычный сайт, им не нужна установка. Можно просто открыть новую вкладку, зайти в аккаунт и начать писать код. Интерфейс у онлайн-редакторов обычно довольно понятный и похожий на десктопные редакторы. Конечно, для полноценной разработки такой способ вряд ли будет удобен, но для обучения или проверки идей с помощью кода подойдет отлично. Кстати, есть специальные онлайн-редакторы для обучения, например PythonTutor, умеющий визуализировать пошаговое выполнение кода.
На что ориентироваться при выборе
- Новичкам, которые впервые работают в редакторе кода, можно посоветовать редакторы VS Code либо Atom. Если вам не требуются отладка и запуск, зато важна скорость, неплохим вариантом будет Sublime Text.
- Людям, которые уже работали с IDE и хотят большего, советуем обратить внимание на специализированные инструменты для конкретных задач вроде Spyder. А если нужна универсальная IDE, оптимальный вариант — PyCharm.
- Разработчикам на нескольких языках, которые работают над большими проектами, может подойти VS или Eclipse. Но если хотите что-то попроще и побыстрее, подойдут редакторы Atom и VS Code. Они могут поддерживать ряд языков одновременно, а дополнительные инструменты обеспечивают запуск и отладку.
Коротко о главном
Где программировать на Python?
Вы можете программировать на Python на своем компьютере, используя специальные IDE или редакторы кода, а также на онлайн-платформах для разработки программ.
Что нужно для программирования на Python?
Для программирования на Python вам нужен компьютер, IDE или редактор кода, а также установленный Python-компилятор.
Где писать код на «Питоне»?
Вы можете писать код на Python в специальных IDE или редакторах кода, таких как PyCharm, Sublime Text, VS Code и других.
Какой IDE выбрать для Python?
Для Python можно использовать множество IDE, включая PyCharm, IDLE, Visual Studio Code, Eclipse, Atom и другие. Выбор зависит от ваших индивидуальных потребностей и предпочтений.
Можно ли программировать на Python онлайн?
Да, существуют онлайн-платформы для разработки программ на Python, такие как repl.it, trinket.io и другие.
Нужно ли платить за IDE для Python?
Не обязательно. Существует множество бесплатных IDE и редакторов кода на «Питоне», такие как IDLE, Visual Studio Code, PyCharm Community Edition и другие. Однако, платные версии IDE могут предоставлять более продвинутые функции и возможности.
Тест-симулятор по аналитике данных