Выбираем самый удобный редактор кода Python

Львиную долю своего рабочего времени программисты проводят в редакторах кода. В такой ситуации комфортность и удобство рабочей среды трудно переоценить. Конечно, писать код можно и в простейшем текстовом редакторе и сохранять в .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 Гб оперативной памяти.
- Имеет важные встроенные функции.
- Разработана профессионалами специально для 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.
Расскажите, в каком редакторе для Python вы пишете код и почему?
Получить востребованную профессию с нуля или Level Up по навыкам и зарплате можно, пройдя онлайн-курсы SkillFactory:
- Курс «Python для веб-разработки»
- Профессия Веб-разработчик
- Обучение профессии Data Science с нуля
- Онлайн-буткемп по Data Science
- Онлайн-буткемп по Data Analytics
- Профессия аналитика с любым стартовым уровнем
Eще курсы
- Курс по Machine Learning
- Курс «Математика и Machine Learning для Data Science»
- Продвинутый курс «Machine Learning Pro + Deep Learning»
- Курс по аналитике данных
- Курс по DevOps
- Профессия iOS-разработчик с нуля
- Профессия Android-разработчик с нуля
- Профессия Java-разработчик с нуля
- Курс по JavaScript
- Профессия UX-дизайнер с нуля
- Профессия Web-дизайнер
Лучшие IDE для Python в 2023 году
IDE, или интегрированная среда разработки, — это программное обеспечение, которое предоставляет разработчикам комплексный набор инструментов для написания, тестирования, отладки и развертывания программ. IDE являются центральной частью рабочего процесса большинства программистов, поскольку они предоставляют все необходимое для эффективной работы с кодом в одном месте.
Важность IDE для разработки на Python обусловлена несколькими факторами:
- Продуктивность: IDE включают различные инструменты, такие как автозаполнение кода, указатели на ошибки в реальном времени, встроенные отладчики и системы контроля версий, которые значительно повышают производительность программиста.
- Особенности Python: Python имеет некоторые уникальные особенности, которые делают его немного отличным от других языков программирования. Некоторые IDE имеют специальные функции, которые улучшают работу с Python, включая поддержку динамической типизации, автоматическое форматирование в соответствии с PEP8 и интеграцию с популярными Python-библиотеками.
- Совместная работа и поддержка: Интегрированная среда разработки помогает упростить процесс совместной работы над проектами, поскольку она обеспечивает стандартизированную среду для разработки. Многие IDE имеют встроенную поддержку систем контроля версий, таких как Git, что позволяет разработчикам легко отслеживать и объединять изменения в коде.
- Обучение: Для новичков IDE может служить отличным инструментом для изучения Python, поскольку они предоставляют сразу все необходимое для начала работы. Кроме того, IDE может давать полезные советы и показывать типичные ошибки, что облегчает обучение.
Далее в статье мы рассмотрим несколько популярных IDE для Python, их особенности, а также преимущества и недостатки каждой из них.
PyCharm
PyCharm — это одна из самых популярных интегрированных сред разработки (IDE), специально созданных для Python. Его разработала компания JetBrains, известная разработкой других мощных IDE, таких как IntelliJ IDEA для Java и WebStorm для JavaScript. PyCharm был впервые представлен в 2010 году и с тех пор он используется разработчиками по всему миру.
Вот некоторые особенности PyCharm, которые делают его таким полезным для разработки на Python:
- Интеллектуальное автозаполнение: PyCharm имеет высоко развитую систему автозаполнения кода, которая включает понимание контекста кода, динамическую типизацию и автоматическое обнаружение потенциальных ошибок.
- Встроенная поддержка PEP8: PyCharm автоматически проверяет ваш код на соответствие стандартам форматирования кода PEP8 и визуализирует потенциальные нарушения.
- Интеграция с пакетами Python: PyCharm имеет глубокую интеграцию с большинством популярных библиотек и фреймворков Python, таких как Django, Flask, SQLAlchemy и многими другими.
- Встроенная отладка и тестирование: PyCharm обладает мощными инструментами для отладки кода и автоматизированного тестирования, что значительно облегчает отслеживание и исправление ошибок.
- Интеграция с системами контроля версий: PyCharm поддерживает встроенную интеграцию с Git, SVN, Mercurial и другими системами контроля версий.
PyCharm доступен в двух версиях: бесплатная версия Community Edition, которая имеет основной набор функций, достаточный для большинства разработчиков, и платная версия Professional Edition, которая содержит дополнительные функции, такие как поддержка веб-разработки, работы с базами данных и другие.
Visual Studio Code
Visual Studio Code (часто сокращается до VS Code) — это бесплатная открытая среда разработки от Microsoft. Хотя она не является специализированной IDE исключительно для Python, VS Code может использоваться для разработки на Python благодаря своим расширениям и гибкости. VS Code была представлена впервые в 2015 году и быстро стала популярной среди разработчиков благодаря своим быстрым обновлениям, активному сообществу и обширной поддержке расширений.
Вот несколько особенностей VS Code, которые делают его удобным для разработки на Python:
- Расширение Python: Расширение Python для VS Code, разработанное Microsoft, предоставляет множество функций для разработки на Python, включая интеллектуальное автозаполнение, линтинг, форматирование кода, отладку и поддержку Jupyter Notebook.
- Встроенная отладка: VS Code имеет встроенные инструменты для отладки кода, позволяющие устанавливать точки останова, просматривать переменные и контролировать выполнение вашего программного кода.
- Встроенная поддержка Git: VS Code включает поддержку Git «из коробки», позволяющую вам удобно создавать коммиты, выполнять push и pull обновлений, просматривать разницу между версиями без использования командной строки.
- Поддержка расширений: Одной из сильных сторон VS Code является поддержка расширений, которая позволяет вам настраивать среду разработки под свои нужды. Существует большое количество расширений для поддержки разных языков, библиотек, фреймворков, инструментов форматирования кода и других функций.
- Настройки и гибкость: VS Code очень настраиваема. Вы можете настраивать все, от темы и шрифтов до поведения редактора кода и интеграции с другими инструментами.
Хотя Visual Studio Code не является исключительно инструментом для разработки на Python, его гибкость и поддержка расширений делают его очень удобным для разработки на Python. Это особенно верно для разработчиков, которые работают с несколькими языками или технологиями, требующими такой гибкости.
Jupyter Notebook
Jupyter Notebook — это открытое средство разработки, популярное среди исследователей данных, преподавателей, студентов и программистов, работающих с данными. Впервые представленный в 2014 году, Jupyter Notebook является важным инструментом для интерактивного программирования, анализа данных, визуализации, создания моделей машинного обучения и многого другого. Он особенно популярен среди пользователей Python, но поддерживает множество других языков программирования.
Вот несколько ключевых особенностей Jupyter Notebook:
- Интерактивность: Jupyter Notebook позволяет выполнять код в интерактивных «ноутбуках», которые сочетают в себе код, текст, математические формулы, визуализации и многое другое. Это позволяет вам работать с кодом и данными в более визуальном и экспериментальном режиме.
- Поддержка Markdown и LaTeX: Jupyter Notebook поддерживает Markdown для форматирования текста и LaTeX для математических формул, что делает его идеальным для создания понятных и хорошо выглядящих документов, включающих код.
- Интеграция с Python и другими языками: Хотя Jupyter был создан главным образом для Python (имя «Jupyter» происходит от трех языков: Julia, Python и R), он также поддерживает множество других языков программирования. Вы можете использовать Jupyter Notebook с языками, такими как Julia, R, Ruby, Haskell и многими другими.
- Распределенные вычисления: С помощью инструментов, таких как Apache Spark, Jupyter может выполнять распределенные вычисления для обработки больших наборов данных.
- Поддержка библиотек: Jupyter интегрируется с многими популярными библиотеками Python, такими как NumPy, Pandas, Matplotlib, Scikit-Learn и многими другими, что позволяет вам работать с данными, выполнять сложные вычисления и создавать визуализации прямо в вашем браузере.
- Совместная работа и удаленная работа: Jupyter Notebook может быть настроен для удаленной работы и совместной работы, что делает его удобным инструментом для команды.
Jupyter Notebook — это мощный инструмент для разработки на Python, особенно в области науки о данных и других сферах, где важна визуализация данных и интерактивность. Он также может быть полезен для обучения Python и другим языкам программирования благодаря своей поддержке интерактивного программирования и смешанного контента.
Spyder
Spyder — это открытое интегрированное средство разработки (IDE), специально разработанное для языка программирования Python. Spyder был создан для ученых, инженеров и аналитиков данных, работающих с научными библиотеками Python, такими как NumPy, SciPy, Matplotlib, Pandas, IPython, SymPy и Cython.
IDE Spyder предлагает множество полезных функций для разработки на Python:
- Многофункциональный редактор: Spyder имеет многофункциональный редактор кода с подсветкой синтаксиса, автозаполнением кода, навигацией по коду и другими функциями, которые облегчают написание кода на Python.
- Интегрированная вычислительная среда: Spyder интегрируется с IPython, что позволяет использовать интерактивные блокноты IPython и другие инструменты IPython непосредственно в IDE.
- Полнофункциональный отладчик: Spyder имеет встроенный отладчик для поиска и исправления ошибок в коде Python.
- Инструменты визуализации: Spyder интегрируется с Matplotlib и другими библиотеками визуализации Python, что позволяет создавать графики и другие визуализации прямо в IDE.
- Просмотрщик переменных: Эта функция позволяет просматривать, просматривать и редактировать значения переменных, используемых в вашем коде.
- Поддержка плагинов: Spyder можно расширять с помощью плагинов, что позволяет добавлять новые функции и инструменты в IDE.
Spyder — отличный выбор для программистов Python, особенно для тех, кто работает в научной или аналитической сфере, благодаря его интеграции с научными библиотеками Python и другими особенностями.
Atom
Atom — это открытое интегрированное средство разработки (IDE), созданное GitHub. Это одна из наиболее гибких и настраиваемых IDE, доступных для программистов. Хотя Atom не является специфическим для Python, у него есть множество пакетов и дополнений, которые обеспечивают широкую поддержку разработки на Python.
Особенности Atom для разработки на Python:
- Гибкая настройка: Atom позволяет пользователям настраивать среду разработки по своим потребностям. Вы можете устанавливать дополнительные пакеты, создавать и изменять темы, изменять поведение редактора с помощью конфигурационного файла и многое другое.
- Поддержка пакетов: Atom имеет множество пакетов, специально созданных для разработки на Python. Это включает пакеты для автозаполнения, проверки синтаксиса, форматирования кода, выполнения кода Python и многое другое.
- Встроенный Git и GitHub: Atom был создан GitHub, поэтому он имеет встроенную поддержку Git и GitHub. Вы можете создавать коммиты, проверять статус своего репозитория, клонировать репозитории и многое другое прямо из IDE.
- Teletype: Teletype для Atom позволяет программистам работать над кодом в режиме реального времени, словно они находятся в одном редакторе.
- Интегрированная файловая система: Atom имеет встроенную файловую систему, которая позволяет легко просматривать, открывать и редактировать файлы и каталоги.
- Подсветка синтаксиса: Atom поддерживает подсветку синтаксиса для Python и многих других языков программирования.
В целом, Atom — это мощная и гибкая среда разработки, которая может быть настроена для соответствия любым потребностям разработки на Python.
Vim
Vim — это высокоэффективное текстовое средство редактирования с возможностью расширения. Хотя он не является специализированной IDE для Python, его можно настроить и расширить, чтобы обеспечить полноценную поддержку Python.
Особенности Vim для разработки на Python:
- Эффективность: Vim известен своей эффективностью. Он работает в текстовом режиме, что обеспечивает скорость и производительность.
- Расширяемость: Vim можно настроить и расширить с помощью скриптов и плагинов. Существуют плагины для автозаполнения, проверки синтаксиса, интеграции с Git и многое другое.
- Портативность: Vim доступен на множестве платформ, включая Linux, Windows и macOS. Это делает его идеальным выбором для программистов, работающих на разных системах.
Emacs
Emacs — это мощное средство разработки, которое часто описывают как «больше, чем текстовый редактор». По умолчанию Emacs не предоставляет специализированную поддержку Python, но его можно настроить и расширить для работы с Python.
Особенности Emacs для разработки на Python:
- Расширяемость: Emacs можно настроить и расширить с помощью его языка расширения Emacs Lisp. Существует множество пакетов, которые добавляют поддержку Python, включая автозаполнение, проверку синтаксиса, выполнение кода Python в Emacs и многое другое.
- Мощные инструменты: Emacs имеет встроенную поддержку Git, систему окон и буферов, REPL (Read-Eval-Print Loop) для многих языков программирования, включая Python, и множество других инструментов.
- Org-mode: Один из самых мощных инструментов Emacs — это Org-mode, который позволяет вам организовывать свои заметки, задачи, документацию проектов, а также может выполнять код Python прямо в ваших org-файлах.
Хотя Vim и Emacs представляют собой довольно сложные для изучения IDE новичку, они предоставляют невероятную эффективность и гибкость для разработки на Python. Для тех, кто готов вложить время в освоение этих инструментов, они могут стать мощными IDE для Python.
Как выбрать подходящую среду разработки (IDE) для Python-разработчика
Выбор подходящей IDE в значительной степени зависит от ваших требований, рабочего стиля и проекта, над которым вы работаете. Вот несколько факторов, которые стоит учитывать.
Ваш опыт
Если вы новичок, возможно, вам будет удобнее использовать IDE, которая предоставляет множество подсказок, автозаполнение и инструменты отладки, такие как PyCharm или Thonny. Если же вы опытный разработчик, вам может понадобиться более гибкий и настраиваемый редактор, например Vim или Emacs.
Направление вашей работы
Если вы занимаетесь научными исследованиями или анализом данных, Jupyter Notebook или Spyder могут быть отличным выбором. Для веб-разработки PyCharm и Visual Studio Code предлагают мощную поддержку.
Бюджет
Некоторые IDE, например PyCharm Professional, являются платными, хотя они также предлагают бесплатные версии с ограниченными возможностями. Другие, такие как Visual Studio Code, Atom, Vim и Emacs, полностью бесплатны.
Совместимость с платформой
Убедитесь, что выбранная IDE поддерживает вашу операционную систему. Большинство IDE для Python доступны для основных платформ (Windows, macOS, Linux), но некоторые могут предлагать лучшую поддержку или функциональность для определенной системы.
Поддержка сообщества
Идеально, если выбранная IDE имеет активное сообщество, которое может помочь в решении любых возникающих проблем и поддерживает расширения или плагины, расширяющие ее функциональность.
Сравнительная таблица IDE для Python
Информация в таблице является приблизительной и учитывает общий опыт пользователей. Выбор IDE зависит от индивидуальных потребностей пользователя.
| IDE | Поддержка языков | Сообщество и поддержка | Цена | Совместимость с платформами | Назначение |
|---|---|---|---|---|---|
| PyCharm | Python, JavaScript, и т. д. | Большое сообщество, много плагинов, активная поддержка | Версия Community – бесплатная, версия Professional – платная | Windows, macOS, Linux | Веб-разработка, разработка программного обеспечения |
| Visual Studio Code | Поддерживает множество языков с помощью расширений | Большое сообщество, много плагинов, активная поддержка | Бесплатный | Windows, macOS, Linux | Универсальное использование |
| Jupyter Notebook | Python, Julia, R, и т. д. | Большое сообщество, активная поддержка | Бесплатный | Windows, macOS, Linux | Научные исследования, анализ данных |
| Spyder | Python | Активное сообщество, много плагинов | Бесплатный | Windows, macOS, Linux | Научное программирование |
| Atom | Поддерживает множество языков с помощью расширений | Большое сообщество, много плагинов, активная поддержка | Бесплатный | Windows, macOS, Linux | Универсальное использование |
| Vim | Поддерживает множество языков | Большое сообщество, активная поддержка | Бесплатный | Windows, macOS, Linux, UNIX | Универсальное использование, наиболее эффективен для высококвалифицированных разработчиков |
| Emacs | Поддерживает множество языков | Большое сообщество, активная поддержка | Бесплатный | Windows, macOS, Linux, UNIX | Универсальное использование, наиболее эффективен для высококвалифицированных разработчиков |
Выводы
В зависимости от вашего опыта, потребностей и направления работы вы можете выбрать из широкого спектра сред разработки (IDE) для Python. Начиная с PyCharm, который является отличным выбором для веб-разработки, и заканчивая Jupyter Notebook для научного анализа данных. Spyder идеально подходит для научной работы, в то время как Atom предлагает гибкость для различных проектов. Для тех, кто предпочитает максимальную настраиваемость, Vim и Emacs предлагают расширенные возможности.
Каждая из этих сред имеет свои сильные и слабые стороны, но все они служат одной цели: поддерживать и облегчать разработку на Python. Выбор правильной среды разработки является личным и должен учитывать ваши собственные потребности и стиль работы.
Выбираем IDE: средства для программирования на Python


Мария Жарова Эксперт по Python и математике для Data Science, ментор одного из проектов на курсе по Data Science.
Если у вас на компьютере установлен язык программирования (компилятор или интерпретатор), можно писать код даже в Блокноте, а затем исполнять его через консоль. Но это неудобно. Разработчики пользуются редакторами кода или IDE — интегрированными средами разработки. Так называется комплекс программных средств для кодинга: в них можно писать, редактировать, исполнять и отлаживать код. Мы поговорим о таких средствах для Python. Это популярный язык программирования, который применяется во множестве отраслей: от веба до прикладной математики. Поэтому инструменты многочисленны и разнообразны. Узнать о нем больше можно в нашей статье Кому и для чего нужен Python?

Освойте профессию
«Fullstack-разработчик на Python»
Fullstack-разработчик на Python
Fullstack-разработчики могут в одиночку сделать IT-проект от архитектуры до интерфейса. Их навыки востребованы у работодателей, особенно в стартапах. Научитесь программировать на Python и JavaScript и создавайте сервисы с нуля.

Профессия / 12 месяцев
Fullstack-разработчик на Python
Создавайте веб-проекты самостоятельно
4 116 ₽/мес 7 483 ₽/мес

IDE и редактор кода для Python: в чем разница
- Редактор кода — это простая легковесная программа, которая похожа на текстовый редактор, только больше адаптированная под написание кода. Она сохраняет проекты в нужном расширении, подсвечивает синтаксис и автоматически проверяет отступы в коде.
- IDE — более масштабный инструмент, программный комплекс. Помимо редактора в нем есть собственная консоль, инструменты для запуска, тестирования и отладки кода. Через IDE можно создавать крупные проекты, подключать систему контроля версий (Git). Некоторые IDE позволяют устанавливать внутри себя новые фреймворки и библиотеки, не заходя в терминал системы.
Пройдите тест и узнайте, какой вы аналитик данных и какие перспективы вас ждут. Ссылка в конце статьи.
Чем редактор кода и IDE отличается от текстового редактора
Редактор кода — это или самостоятельная программа, или часть IDE. Он выглядит как окно, где можно набрать текст, но более адаптирован под код.
Подсветка синтаксиса. Это означает, что, например, служебные слова будут одного цвета, комментарии — другого, классы будут выделяться другим начертанием и так далее. Это помогает быстрее ориентироваться в коде и находить нужные места. Более того, большинство существующих инструментов используются для нескольких языков программирования, поэтому знают синтаксис не только Python. При создании файла можно выбрать, на какой язык будет ориентироваться подсветка. Также программа может понять это самостоятельно по расширению файла.
Форматирование и установка отступов. Отступы используются практически во всех языках программирования, но в Python они обязательны и являются частью синтаксиса. Редакторы обычно умеют поддерживать и ставить нужные отступы автоматически. Но это только малая часть. Хорошие IDE и редакторы поддерживают более масштабное автоформатирование. например, во многих редакторах есть спеллчекеры — они показывают, если что-то написано неправильно, и обращают внимание пользователя на ошибку. Также есть инструменты, которые автоматически дополняют команды и функции из кода.
Возможность запуска кода. Изначально запуск кода был прерогативой IDE, но в некоторых редакторах есть возможность запуска написанного кода в консоли непосредственно из него. Не нужно выходить из редактора и открывать терминал, все запустится автоматически нажатием соответствующей кнопки в редакторе.
Создание, редактирование и сохранение файлов. Большинство редакторов и практически все IDE могут показывать структуру файлов в папке. Обычно это нужно для проектов, которые включают больше одного файла. Прямо внутри среды можно переключаться между файлами, создавать новые в папках и подпапках, сохранять изменения. Более того, многие приложения поддерживают системы контроля версий вроде Git и дают возможность делать коммиты прямо из среды, причем это умеют не только IDE, но и некоторые редакторы.
Отладка. Это процесс нахождения и исправления ошибок. Чтобы это можно было сделать быстрее, существуют расширенные возможности: пошаговое выполнение кода, остановка исполнения в определенной точке, просмотр содержимого переменных в любой момент времени и многое другое. Все это входит в функционал инструментов отладки.
Кастомизация. Любую IDE и почти любой редактор можно настроить под себя. Это не только цветовая гамма и размеры шрифта, но и расположение окон и кода, панели под рукой, горячие клавиши и многое другое. Некоторые инструменты поддерживают дополнения — сторонние расширения, дополняющие функциональность. Их можно установить в IDE или даже в редактор. Например, браузерные расширения или возможность по-новому редактировать код или дополнять слова.
Читайте также С чего начать учить Python
Что содержится в IDE для написания программ на «Питоне»
В редакторах есть все инструменты для начального уровня работы с кодом, и часто их бывает достаточно. Рассмотрим отдельные возможности, которые предоставляют IDE:
- визуальный редактор для быстрого создания проектов из блоков и отдельных файлов;
- полная синхронизация с системой контроля версий;
- интерактивная консоль;
- дополнительные инструменты для того или иного направления IT;
- множество возможностей для наглядной отладки, тестирования, анализа кода, а также решения различных задач;
- возможность установить фреймворк или библиотеку через интерфейс среды;
- возможность работать с несколькими языками программирования, в том числе одновременно.
Кому-то будет удобнее работать с простым и не занимающим много памяти редактором, а кому-то — с масштабной IDE со множеством дополнительных возможностей.

Станьте Fullstack-разработчик на Python и найдите стабильную работу
на удаленке
Популярные 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 могут предоставлять более продвинутые функции и возможности.
Лучшие IDE и редакторы кода для Python
Учитывая многообразие IDE и редакторов кода, легко запутаться, поэтому мы собрали самые популярные инструменты для разработки на Python.
Писать на Python, используя IDLE или Python Shell, вполне удобно, если речь идёт о простых вещах, однако с ростом размеров проектов программирование превращается в мучение. С помощью IDE или даже хорошего редактора кода можно значительно упростить себе жизнь. Но вот вопрос — что выбрать?
В этой статье мы пройдёмся по основным инструментам, позволяющим писать на Python. Мы не выберем за вас лучший вариант, но рассмотрим «за» и «против» каждого и поможем сделать взвешенное решение.
- Что такое IDE и редактор кода?
- Требования к хорошей среде разработки
- Редакторы и IDE с поддержкой Python
- Редакторы и среды разработки, написанные на Python
- Так какую Python IDE выбрать?
Что такое IDE и редактор кода?
IDE (или интегрированная среда разработки) — это программа, предназначенная для разработки программного обеспечения. Как следует из названия, IDE объединяет несколько инструментов, специально предназначенных для разработки. Эти инструменты обычно включают редактор, предназначенный для работы с кодом (например, подсветка синтаксиса и автодополнение); инструменты сборки, выполнения и отладки; и определённую форму системы управления версиями.
Большинство IDE поддерживают множество языков программирования и имеют много функций, из-за чего могут быть большими, занимать много времени для загрузки и установки и требуют глубоких знаний для правильного использования.
С другой стороны, есть редакторы кода, которые представляют собой текстовый редактор с подсветкой синтаксиса и возможностями форматирования кода. Большинство хороших редакторов кода могут выполнять код и использовать отладчик, а лучшие даже могут взаимодействовать с системами управления версиями. По сравнению с IDE, хороший редактор кода, как правило, легковесней и быстрее, но зачастую ценой меньшей функциональности.
Требования к хорошей среде разработки
Итак, что нам нужно от среды разработки? Набор функций разных сред может отличаться, но есть набор базовых вещей, упрощающих программирование:
- Сохранение файлов. Если IDE или редактор не дают вам возможности сохранить работу и позже всё открыть в том же состоянии, в котором оно было во время закрытия, то не такая уж это и IDE.
- Запуск кода из среды. То же самое, если вам нужно выйти из среды для запуска кода, то это не более, чем простой текстовый редактор.
- Поддержка отладки. Возможность пошагово выполнить код является базовой функцией всех IDE и большинства хороших редакторов кода.
- Подсветка синтаксиса. Возможность быстро найти ключевые слова, переменные и прочее делает чтение и понимание кода на порядок проще.
- Автоматическое форматирование кода. Любой редактор или IDE, который действительно таковым является, распознает двоеточие после while или for выражения и автоматически сделает отступ на следующей строке.
Разумеется, есть множество других функций, от которых вы бы не отказались, но приведённые выше — основные функции, которыми должна обладать хорошая среда разработки.
А теперь давайте взглянем на некоторые инструменты общего назначения, которые можно использовать для разработки на Python.
Редакторы и IDE с поддержкой Python
Eclipse + PyDev
Если вы близки с 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
Sublime Text, написанный инженером из Google с мечтой о лучшем текстовом редакторе, является весьма популярным редактором кода. Доступный на всех платформах, Sublime Text имеет встроенную поддержку редактирования Python-кода, а также богатый набор расширений, называемых пакетами, которые расширяют возможности синтаксиса и редактирования.
Установить дополнительный Python-пакет может быть непросто — все пакеты Sublime Text написаны на Python, поэтому для установки пакетов сообщества зачастую может потребоваться выполнить Python-скрипт непосредственно в редакторе.
Преимущества:у Sublime Text большое количество поклонников. Как редактор кода, Sublime Text быстрый, лёгкий и имеет хорошую поддержку.
Недостатки: Sublime Text не является бесплатным, хотя вы можете использовать пробный период сколько угодно. Установка расширений может превратиться в тот ещё квест. Кроме того, в редакторе нет поддержки отладки и запуска кода.
Atom
Доступный на всех платформах Atom называют «хакабельным текстовым редактором 21 века». Atom написан с использованием Electron — фреймворка для создания кроссплатформенных приложений для десктопа средствами JavaScript, HTML и CSS — и имеет множество расширений. Поддержку Python можно также подключить с помощью расширения, которое можно установить прямо в Atom.
Преимущества: поддержка на всех платформах благодаря Electron. Atom лёгкий и быстро скачивается и загружается.
Недостатки: поддержка сборки и отладки не встроенная, а добавляется с помощью расширений. Поскольку Atom написан с помощью Electron, он всегда работает как JavaScript-процесс, а не как нативное приложение.
GNU Emacs
Задолго до войны iPhone с Android, до войны Linux с Windows, даже до войны PC с Mac была война редакторов с GNU Emacs в качестве одного из участников военных действий. Описываемый как «расширяемый, настраиваемый, самодокументированный текстовый редактор», GNU Emacs существует почти столь же долго, сколько и UNIX, и успел завоевать немало поклонников.
Доступный бесплатно на каждой платформе (в той или иной форме) GNU Emacs использует язык Lisp для кастомизации. Само собой, для Python тоже найдутся скрипты кастомизации.
Преимущества: вы знакомы с Emacs, вы используете Emacs, вы любите Emacs. Lisp — ваш второй язык, и вы знаете, что с ним вы способны на всё.
Недостатки: кастомизация подразумевает написание (или копипасту) Lisp-кода в различные скрипты. Если таковых не имеется, то вам, возможно, придётся изучить Lisp, чтобы со всем разобраться.
Vi / Vim
По другую сторону баррикад в войне редакторов находится 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
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, предназначенных именно для Python, является PyCharm. Существует как бесплатный open-source (Community), так и платный (Professional) варианты IDE. PyCharm доступен на Windows, Mac OS X и Linux.
PyCharm «из коробки» поддерживает разработку на Python напрямую — откройте новый файл и начинайте писать код. Вы можете запускать и отлаживать код прямо из PyCharm. Кроме того, в IDE есть поддержка проектов и системы управления версиями.
Преимущества: это среда разработки для Python с поддержкой всего и вся и хорошим коммьюнити. В ней «из коробки» можно редактировать, запускать и отлаживать Python-код.
Недостатки: PyCharm может медленно загружаться, а настройки по умолчанию, возможно, придётся подкорректировать для существующих проектов.
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
Thonny называют IDE для новичков. Написанный и поддерживаемый Институтом информатики Тартуского университета в Эстонии, Thonny доступен на всех основных платформах.
По умолчанию Tonny устанавливается с версией Python, идущей в комплекте, поэтому вам не понадобится устанавливать ещё что-нибудь. Продвинутым пользователям, возможно, придётся изменить эту настройку, чтобы IDE нашла и использовала уже установленные библиотеки.
Преимущества: вы начинающий Python-программист и вам нужна IDE, с которой можно сразу идти в бой.
Недостатки: продвинутым пользователям будет недостаточно функциональности, а встроенный интерпретатор они заменят. Кроме того, учитывая новизну IDE, могут возникнуть проблемы, решения которых на данный момент нет.
Так какую Python IDE выбрать?
Решать только вам, но вот пара рекомендаций:
- Начинающим питонистам следует взять что-то с наименьшими возможностями кастомизации. Чем меньше препятствий, тем лучше;
- Если вы уже пользуетесь каким-нибудь редактором для других задач, то посмотрите в сторону редакторов кода;
- Ну а если у вас уже стоит IDE для другого языка, то попробуйте добавить в неё поддержку Python.
Смотрите также подборку материалов по Python для начинающих. Интересуетесь ещё и вебом? Тогда загляните в нашу аналогичную подборку IDE для веб-разработки.
