IDLE ( I ntegrated D evelopment and L earning E nvironment) – это интегрированная среда для разработки (и обучения), которая поставляется вместе с Python. Сама IDLE написана на Python с использованием библиотеки Tkinter, поэтому является кроссплатформенным приложением (может работать на Windows, Mac OS, Linux).
IDLE это по сути текстовый редактор с подсветкой синтаксиса, автозаполнением, умным отступом и другими функциями для удобства написания кода на Python.
В данной статье рассмотрим основные принципы работы с IDLE.
- Запуск IDLE
- Интерактивный режим
- Подсветка синтаксиса
- Отступы
- Autocomplete
- Подсказки к функциям
- История команд
- Режим редактирования файлов
- Начало работы с языком Python
- Введение
- Примеры
- Начало работы
- Убедитесь, что Python установлен
- Привет, мир в Python, используя IDLE
- Запустите интерактивную оболочку Python
- Другие онлайн оболочки
- Запускать команды в виде строки
- Раковины и дальше
- Создание переменных и присвоение значений
- Пользовательский ввод
- Поиск проблемы
- Типы данных
- Встроенные типы
- Булевы
- чисел
- Последовательности и коллекции
- Встроенные константы
- Тестирование типа переменных
- Преобразование между типами данных
- Явный строковый тип при определении литералов
- Изменяемые и неизменяемые типы данных
- Встроенные модули и функции
- Отступ блока
- Пробелы и табуляции
- Типы коллекций
- Помощь Утилита
- Создание модуля
- Установка внешних модулей с помощью pip
- Поиск / установка пакета
- Обновление установленных пакетов
- Обновление пункта
- Установка Python 2.7.x и 3.x
- Синтаксис
- Параметры
- Примечания
- Лучшие IDE и редакторы кода для Python
- Что такое IDE и редактор кода?
- Требования для хорошей среды разработки
- Редакторы и IDE с поддержкой Python
- Eclipse + PyDev
- Sublime Text
- GNU Emacs
- Vi / Vim
- Visual Studio
- Visual Studio Code
- Редакторы и IDE, разработанные для Python
- PyCharm
- Spyder
- Thonny
- Так что из этого выбрать?
Видео:[1] Курс по Python 3. Установка на компьютер и настройка IDLEСкачать
Запуск IDLE
sudo apt-get install idle3
Видео:Как запустить Python IDLE и сделать первую программу (для новичков)Скачать
Интерактивный режим
REPL режим можно запустить в любой консоли, но IDLE дает ряд преимуществ, которые мы разберем ниже.
Подсветка синтаксиса
Прежде всего подсветка синтаксиса упрощает жизнь программиста. Чтение и написание кода становится более удобным – каждая конструкция языка подсвечивается определенным цветом. Комментарии красным, строки зеленым, вывод синим и т.д.
Отступы
Отступы в IDLE создаются автоматически. По умолчанию их размер равен 8-ми пробелам.
В REPL режиме команды исполняются построчно, однако IDLE понимает, что для некоторых инструкций (if-else, while и т.д.) необходим многострочный ввод. Когда вы ввели первую строку, например if n == 0: и нажали «enter», IDLE перенесет курсор на новую строку и автоматически создаст новый отступ.
Небольшая инструкция по работе с отступами:
Autocomplete
Подсказки к функциям
При вызове функции или метода, после открывающейся скобки (где далее будут прописаны аргументы) IDLE отобразит подсказку. В ней будут описаны аргументы, которые ожидает функция.
Подсказка будет отображаться до тех пор, пока вы не закроете скобку.
История команд
Чтобы полистать историю введенных ранее команд, установите курсор после » >>> » и выполните комбинацию Alt + n (листать вперед) или Alt + p (листать назад).
Если же вы нашли команду в окне и хотите ее скопировать, поставиться курсор в конец этой команды и нажмите «enter».
Видео:Как установить Python?Скачать
Режим редактирования файлов
В новом окне доступен тот же функционал, что и в интерактивном режиме. Однако разница все же есть – в режиме редактирования файлов используется 4 пробела для отступа, в отличие от интерактивного режима (там используется 8 пробелов).
IDLE особенно удобно использовать при обучении языку Python, чтобы быстро проверять на практике команды и инструкции. Также, в режиме REPL, IDLE имеет ряд преимуществ перед обычной консолью (подсказки, подсветка синтаксиса, авто-отступы и др.)
Однако имеющегося функционала может оказаться не достаточно для серьезной разработки. Стоит присмотреться к PyCharm или VSCode.
Видео:Вся суть программирования на PythonСкачать
Начало работы с языком Python
Видео:Учим Python за 1 час! #От ПрофессионалаСкачать
Введение
Видео:Учил python 30 дней. Полное видео на каналеСкачать
Примеры
Видео:Как программировать на русском языке | АлгоритмыСкачать
Начало работы
В настоящее время активно используются две основные версии Python:
Видео:Лучшая IDE для Python!Скачать
Убедитесь, что Python установлен
Чтобы убедиться, что Python был установлен правильно, вы можете проверить это, выполнив следующую команду в своем любимом терминале (если вы используете ОС Windows, вам необходимо добавить путь к python в переменную среды, прежде чем использовать его в командной строке):
Видео:Основные настройки IDLE PythonСкачать
Привет, мир в Python, используя IDLE
IDLE простой редактор для Python, которая поставляется в комплекте с Python.
Как создать программу Hello, World в IDLE
В оболочке есть подсказка из трех угловых скобок:
Теперь напишите следующий код в командной строке:
>>> печать ( «Hello, World») Нажмите Enter. >>> print («Hello, World») Hello, World ## Hello World Python file Создайте новый файл `hello.py`, который содержит следующую строку: печать («Привет, мир») Вы можете использовать функцию Python 3 `print` в Python 2 со следующим оператором` import`: from __future__ import print_function Python 2 имеет ряд функций, которые могут быть дополнительно импортированы из Python 3 с помощью модуля `__future__`, как обсуждалось [обсуждалось здесь] [3].
При использовании Python 2 вы также можете ввести строку ниже. Обратите внимание, что это недопустимо в Python 3 и, следовательно, не рекомендуется, потому что это уменьшает совместимость кода между версиями.
$ python hello.py Привет, мир
Вы должны увидеть Hello, World напечатанный на консоль.
Видео:Божественная настройка IDE для Python | PycharmСкачать
Запустите интерактивную оболочку Python
При выполнении (запуск) python команды в терминале, вы с интерактивной оболочкой Python. Это также известно как Python интерпретатора или РЕПЛ (для «Read Оценивать Loop Print»).
$ python Python 2.7.12 (по умолчанию, 28 июня 2016 г., 08:46:01) [GCC 6.1.1 20160602] в linux Для получения дополнительной информации введите «help», «copyright», «credits» или «license».
$ python3 Python 3.6.0 (по умолчанию, 13 января 2017 г., 00:00:00) [GCC 6.1.1 20160602] в linux Для получения дополнительной информации введите «help», «copyright», «credits» или «license».
В командной строке запустите:
Есть несколько способов закрыть оболочку Python:
Видео:Python. Команды print() input()Скачать
Другие онлайн оболочки
Различные веб-сайты предоставляют онлайн-доступ к оболочкам Python.
Онлайн оболочки могут быть полезны для следующих целей:
Отказ от ответственности: авторы документации не связаны с любыми ресурсами, перечисленными ниже.
Видео:НАСТРОЙКА PyCharm И УСТАНОВКА Python 3.11 | ЛЕГКО И БЫСТРО!Скачать
Запускать команды в виде строки
Python может быть передан произвольный код в виде строки в оболочке:
Это может быть полезно при объединении результатов сценариев вместе в оболочке.
Видео:Python. Первая программа в IDLEСкачать
Раковины и дальше
PEP8 определяет принципы для форматирования кода Python. Правильное форматирование кода важно, чтобы вы могли быстро прочитать, что делает код.
Видео:Учим python за 7 часов! Уроки Python Полный курс обучения программированию на python с нуляСкачать
Создание переменных и присвоение значений
Чтобы создать переменную в Python, все, что вам нужно сделать, это указать имя переменной, а затем присвоить ей значение.
Python использует = для присваивания значений переменных. Нет необходимости заранее объявлять переменную (или назначать ей тип данных), присваивая значение самой переменной, объявляет и инициализирует переменную с этим значением. Нет способа объявить переменную без присвоения ей начального значения.
Переменная присваивания работает слева направо. Таким образом, следующее даст вам синтаксическую ошибку.
Вы не можете использовать ключевые слова Python в качестве допустимого имени переменной. Вы можете увидеть список ключевых слов по:
Правила именования переменных:
Несмотря на то, что нет необходимости указывать тип данных при объявлении переменной в Python, при выделении необходимой площади в памяти для переменной, интерпретатор Python автоматически выбирает наиболее подходящий встроенный тип для него:
Теперь, когда вы знаете основы назначения, давайте разберемся с тонкостью назначения в Python.
При использовании = сделать операцию присваивания, что слева от = это имя для объекта справа. Наконец, что = делает присвоить ссылку на объект по праву на имя слева.
Ошибка в последнем примере может быть устранена путем присвоения оставшихся значений равному количеству произвольных переменных. Эта фиктивная переменная может иметь любое имя, но оно принято использовать подчеркивание ( _ ) для назначения ненужных значений:
Обратите внимание, что число _ и количество оставшихся значений должны быть равны. В противном случае выдается «слишком много значений для распаковки ошибки», как указано выше:
Вы также можете назначить одно значение нескольким переменным одновременно.
Вложенные списки также действительны в Python. Это означает, что список может содержать другой список в качестве элемента.
Видео:Щелчок 2023 | Как установить Python, IDLE и PyCharm для КЕГЭ по ИнформатикеСкачать
Пользовательский ввод
Интерактивный ввод
В оставшейся части этого примера будет использоваться синтаксис Python 3.
Функция принимает строковый аргумент, который отображает его как подсказку и возвращает строку. Приведенный выше код обеспечивает приглашение, ожидающее ввода данных пользователем.
Если пользователь «Боб» и хиты войти, переменное name будет присвоено строке «Bob» :
IDLE является интегрированной средой разработки и обучения Python и является альтернативой командной строке. Как видно из названия, IDLE очень полезен для разработки нового кода или изучения Python. В Windows это поставляется с интерпретатором Python, но в других операционных системах вам может потребоваться установить его через менеджер пакетов.
Основными целями IDLE являются:
В IDLE, нажмите F5 или run Python Shell для запуска интерпретатора. Использование IDLE может стать лучшим опытом обучения для новых пользователей, потому что код интерпретируется по мере того, как пользователь пишет.
Видео:Универсальный русификатор, который переведет вам любую игруСкачать
Поиск проблемы
Windows
При использовании нескольких версий Python на той же машине, возможное решение переименовать один из python.exe файлов. Например, называя одну версией python27.exe приведет python27 стать командой Python для этой версии.
Debian / Ubuntu / MacOS
Если вы на Debian / Ubuntu / MacOS, откройте терминал и введите python для 2.x Python или python3 для Python 3.x.
Arch Linux
По умолчанию Python на Arch Linux (и потомков) является Python 3, поэтому используйте python или python3 для 3.x на Python и python2 для Python 2.x.
Другие системы
Видео:Готовим русский текст для обработки на Python | Обработка естественного языкаСкачать
Типы данных
Видео:Как сделать темную тему в Python IDLE? / How to get DARK PYTHON IDLE?Скачать
Встроенные типы
Булевы
Если логические значения используются в арифметических операциях, их целые значения ( 1 и 0 для True и False ) будут использоваться для возврата целочисленного результата:
чисел
int : число Integer
Целые числа в Python имеют произвольные размеры.
float : число с плавающей точкой; точность зависит от реализации и архитектуры системы, для CPython float типа данные соответствуют двойному C.
complex : Комплексные числа
Последовательности и коллекции
Python различает упорядоченные последовательности и неупорядоченные наборы (например, set и dict ).
tuple : упорядоченный набор n значений любого типа ( n >= 0 ).
Поддерживает индексацию; неизменный; hashable, если все его члены являются hashable
list : упорядоченный набор из n значений ( n >= 0 )
Не хаси; изменчивый.
Встроенные константы
В сочетании со встроенными типами данных во встроенном пространстве имен имеется небольшое количество встроенных констант:
a = Нет # Значение не будет назначено. Любой действительный тип данных может быть назначен позже
Тестирование типа переменных
Для получения информации о различиях между type() и isinstance() следующим образом: Различия между isinstance и типа в Python
Преобразование между типами данных
Вы можете выполнить явное преобразование типов данных.
Преобразование из строки поплавкового типа «123.456» может быть сделано с помощью float функции.
Вы также можете конвертировать последовательности или типы коллекций
Явный строковый тип при определении литералов
С помощью буквенных меток прямо перед кавычками вы можете указать, какой тип строки вы хотите определить.
Изменяемые и неизменяемые типы данных
Типы данных, экземпляры которого является изменяемым называются изменяемыми типами данных, а так же для неизменяемых объектов и типов данных.
Примеры неизменяемых типов данных:
Примеры изменяемых типов данных:
Встроенные модули и функции
Чтобы проверить встроенную функцию в Python можно использовать dir(). как правило dir(). Если вызывается без аргумента, вернуть имена в текущей области. Иначе, вернуть алфавитный список имен, включающий (некоторые из) атрибут данного объекта и атрибуты, доступные из него.
Чтобы узнать все функции в модуле, мы можем присвоить список функций переменной, а затем распечатать переменную.
кажется __doc__ полезно предоставить некоторые документы, скажем, функции
Вы можете получить доступ к его строкам документации следующим образом:
Отступ блока
Python использует отступ для определения управляющих и циклических конструкций. Это способствует удобочитаемости Python, но требует от программиста пристального внимания к использованию пробелов. Таким образом, неправильная калибровка редактора может привести к тому, что код будет вести себя неожиданным образом.
Блоки, содержащие ровно один однострочный оператор, могут быть помещены в одну строку, хотя эта форма обычно не считается хорошим стилем:
Попытка сделать это с более чем один оператор не будет работать:
Пробелы и табуляции
Короче говоря: всегда используйте 4 пробела для отступа.
Python 3 запрещает смешивать использование табуляции и пробелов для отступа. В таком случае генерируется ошибка времени компиляции: Inconsistent use of tabs and spaces in indentation и программа не будет работать.
Многие редакторы имеют конфигурацию «табуляции в пробелы». При настройке редактора, следует различать символ табуляции ( « т») и клавишу Tab.
Типы коллекций
Списки
Список может быть пустым:
Элементы списка не ограничены одним типом данных, что имеет смысл, учитывая, что Python является динамическим языком:
Список может содержать другой список в качестве своего элемента:
Списки изменчивы, поэтому вы можете изменить значения в списке:
Кроме того, можно добавлять и / или удалять элементы из списка:
Добавить новый элемент в список по определенному индексу. L.insert(index, object)
Получить индекс в списке первого элемента, значение которого равно x. Он покажет ошибку, если такого элемента нет.
Подсчет длины списка
считать появление любого элемента в списке
Удалить и вернуть элемент с индексом ( по умолчанию последнего элемента) с L.pop([index]) возвращает элемент
Вы можете перебирать элементы списка, как показано ниже:
Кортеж
Те же правила индексации для списков также применяются к кортежам. Кортежи также могут быть вложенными, а значения могут быть любыми действительными Python.
Кортеж только с одним членом должен быть определен (обратите внимание на запятую) следующим образом:
или только с помощью tuple синтаксиса
Словари
Чтобы получить значение, обратитесь к нему по его ключу:
Вы также можете получить все ключи в словаре и затем перебрать их:
Словари сильно напоминают синтаксис JSON. Родная json модуль в стандартной библиотеке Python может быть использован для преобразования между JSON и словарями.
задавать
Определение set очень похоже на определение dictionary :
Проверьте членство в set с использованием in :
Вы можете перебрать set точно как список, но помните: значения будут в произвольном, определяемой реализации заказа.
defaultdict
defaultdict никогда не поднимет исключение KeyError. Любой несуществующий ключ получает значение по умолчанию.
Например, рассмотрим следующий словарь
Если мы пытаемся получить доступ к несуществующему ключу, python возвращает нам ошибку следующим образом
Если мы попытаемся получить доступ к dict с несуществующим ключом, python вернет нам значение по умолчанию, т.е. Бостон
и возвращает созданные значения для существующего ключа как обычный dictionary
Помощь Утилита
Python имеет несколько функций, встроенных в интерпретатор. Если вы хотите получить информацию о ключевых словах, встроенных функциях, модулях или темах, откройте консоль Python и введите:
Вы получите информацию, введя ключевые слова напрямую:
или в пределах полезности:
который покажет объяснение:
Вы также можете запросить подклассы модулей:
Вы можете использовать справку для доступа к строкам документации различных импортированных вами модулей, например, попробуйте следующее:
и вы получите ошибку
И теперь вы получите список доступных методов в модуле, но только после того, как вы его импортировали.
Закрой помощник с quit
Создание модуля
Функции в модуле могут быть использованы путем импорта модуля.
Для созданных вами модулей они должны находиться в том же каталоге, что и файл, в который вы их импортируете. (Однако вы также можете поместить их в каталог lib Python с предварительно включенными модулями, но по возможности их следует избегать.)
Модули могут быть импортированы другими модулями.
Специальные функции модуля могут быть импортированы.
Модули могут быть псевдонимами.
Модуль может быть автономным исполняемым скриптом.
Есть две функции, которые можно использовать для получения удобочитаемого представления объекта.
При написании класса вы можете переопределить эти методы, чтобы делать все, что вы хотите:
Используя приведенный выше класс, мы можем увидеть результаты:
Установка внешних модулей с помощью pip
Поиск / установка пакета
Поиск пакета так же прост, как набор текста
Когда ваш сервер находится за прокси-сервером, вы можете установить пакет с помощью следующей команды:
Обновление установленных пакетов
Когда появляются новые версии установленных пакетов, они не устанавливаются автоматически в вашу систему. Чтобы увидеть, какие из установленных пакетов устарели, выполните:
Для обновления конкретного пакета используйте
Обновление пункта
Вы можете обновить существующую установку pip с помощью следующих команд
В Linux или macOS X:
Установка Python 2.7.x и 3.x
Примечание: инструкции Следующие написаны для Python 2.7 (если не указано): инструкции для Python 3.x похожи.
WINDOWS
Во- первых, скачать последнюю версию Python 2.7 с официального сайта ( https://www.python.org/downloads/ ). Версия предоставляется в виде пакета MSI. Чтобы установить его вручную, просто дважды щелкните файл.
По умолчанию Python устанавливается в каталог:
Предупреждение: установка не изменяет автоматически переменную среды PATH.
Предполагая, что ваша установка Python находится в C: Python27 , добавьте это в PATH:
Теперь, чтобы проверить правильность установки Python, напишите в cmd:
Python 2.x и 3.x бок о бок
Чтобы установить и использовать Python 2.x и 3.x параллельно на компьютере с Windows:
Установите Python 2.x, используя установщик MSI.
Python 3 установит модуль запуска Python, который можно использовать для запуска Python 2.x и Python 3.x взаимозаменяемо из командной строки:
Чтобы использовать соответствующую версию pip для конкретной версии Python, используйте:
LINUX
Последние версии CentOS, Fedora, Redhat Enterprise (RHEL) и Ubuntu поставляются с Python 2.7.
Чтобы установить Python 2.7 на Linux вручную, просто сделайте следующее в терминале:
Теперь, чтобы проверить правильность установки Python, напишите в терминал:
Ubuntu (из источника)
Если вам нужен Python 3.6, вы можете установить его из исходного кода, как показано ниже (Ubuntu 16.10 и 17.04 имеют версию 3.6 в универсальном репозитории). Для Ubuntu 16.04 и более ранних версий необходимо выполнить следующие шаги:
Macos
Как мы уже говорили, macOS поставляется с Python 2.7.10, но эта версия устарела и немного изменена по сравнению с обычным Python.
Версия Python, поставляемая с OS X, отлично подходит для обучения, но не подходит для разработки. Версия, поставляемая с OS X, может быть устаревшей с официального текущего выпуска Python, который считается стабильной производственной версией. ( Источник )
Установите Python 2.7:
Для Python 3.x, используйте команду brew install python3 вместо этого.
Синтаксис
Параметры
Примечания
Научим основам Python и Data Science на практике
Это не обычный теоритический курс, а онлайн-тренажер, с практикой на примерах рабочих задач, в котором вы можете учиться в любое удобное время 24/7. Вы получите реальный опыт, разрабатывая качественный код и анализируя реальные данные.
Лучшие IDE и редакторы кода для Python
Писать на Python, используя IDLE или Python Shell, вполне удобно, если речь идёт о простых вещах, однако с ростом размеров проектов программирование превращается в мучение. С помощью IDE или даже хорошего редактора кода можно значительно упростить себе жизнь. Но вот вопрос — что выбрать?
В этой статье мы пройдёмся по основным инструментам, позволяющим писать на Python. Мы не выберем за вас лучший вариант, но рассмотрим «за» и «против» каждого и поможем сделать взвешенное решение.
Что такое IDE и редактор кода?
IDE (или интегрированная среда разработки) — это программа, предназначенная для разработки программного обеспечения. Как следует из названия, IDE объединяет несколько инструментов, специально предназначенных для разработки. Эти инструменты обычно включают редактор, предназначенный для работы с кодом (например, подсветка синтаксиса и автодополнение); инструменты сборки, выполнения и отладки; и определённую форму системы управления версиями.
Большинство IDE поддерживают множество языков программирования и имеют много функций, из-за чего могут быть большими, занимать много времени для загрузки и установки и требуют глубоких знаний для правильного использования.
С другой стороны, есть редакторы кода, которые представляют собой текстовый редактор с подсветкой синтаксиса и возможностями форматирования кода. Большинство хороших редакторов кода могут выполнять код и использовать отладчик, а лучшие даже могут взаимодействовать с системами управления версиями. По сравнению с IDE, хороший редактор кода, как правило, легковесней и быстрее, но зачастую ценой меньшей функциональности.
Требования для хорошей среды разработки
Итак, что нам нужно от среды разработки? Набор функций разных сред может отличаться, но есть набор базовых вещей, упрощающих программирование:
Разумеется, есть множество других функций, от которых вы бы не отказались, но приведённые выше — основные функции, которыми должна обладать хорошая среда разработки.
А теперь давайте взглянем на некоторые инструменты общего назначения, которые можно использовать для разработки на 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 называют «хакабельным текстовым редактором 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.
Редакторы и IDE, разработанные для 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, могут возникнуть проблемы, решения которых на данный момент нет.
Так что из этого выбрать?
Решать только вам, но вот пара рекомендаций:
Интересуетесь ещё и вебом? Тогда загляните в нашу аналогичную подборку IDE для веб-разработки.