Simka
Но как выйти из интерактивного режима, написать программу и сохранить?
Мышкой выделяешь, копируешь в буфер обмена, потом создаёшь файл и вставляешь из буфера обмена в файл, потом удаляешь >>> и выведенные данные и сохраняешь файл.
Интерактивный режим нужен, чтобы запускать код без создавания исходного файла. Во многих языках, чтобы проверить какой-то код, надо сначала создать исходный файл и вставить этот код в него, а потом интерпретатору подавать этот исходный файл. А в питоне можно гораздо быстрее всё проверять, потому что даже подключение к серверу или обработку картинки, например, можно выполнить без всякого исходного файла, просто в интеративном режиме. После проверки можно просто закрыть окно и не надо ничего удалять и очищать после этого, потому что никаких файлов нет. Это экономит время работы в несколько раз.
m1r42
А чем не нравиться IDLE Python (консоль Python) Меню File->New file ?
Потому что IDLE может быть не установлена. Это необязательный элемент. Когда в Linux ставишь питон никакой IDLE там нет, и когда тебе нужно работать с питоном, а IDLE не установлена, ты очень долго будешь соображать, как организовать работу, потому что привык к IDLE. Консоль же есть везде. Для раскрашивания кода ставится просто текстовый редактор кода, в котором есть подсветка синтаксиса и номера строк. Но и без редактора кода можно просто в консоли записать текст и сохранить его. Если ты работаешь прямо на сервере каком-то, то там может не быть редактора кода и вообще может не быть возможности запускать какие-то программы, кроме системных. Так вот для записи кода есть консольные средства везде.
В винде это будет
В конце нажимаешь Ctrl + Z
Также IDLE не так уж сильно разрабатывается, поэтому там могут быть ошибки. В самой IDLE могут быть ошибки. Никто не сканирует её на наличие ошибок и ошибки обнаруживаются только пользователями. Бывает и так, что в IDLE что-то запускается не так, как в консоли. Это лишнее звено.
Simka
что реально дает работа в консоли
Она даёт независимость и эффективность. Если ты привык работать только с IDLE, а она не запустилась или запустилась и просто повисла ни с того ни с сего, то ты не будешь заниматься своими делами и решать свои задачи; ты будешь ждать, когда она разморозится, потому что ты зависим от неё и кроме неё ничего не знаешь. А её никто не дорабатывает, потому что она нужна только для начинающих и то только на первое время (на месяц примерно). Редакторы кода же, в отличие от IDLE, дорабатываются постоянно и ошибки в них ищутся и исправляются, поэтому на них ты можешь положиться. Естественно, и синтаксис они подсвечивают гораздо лучше и подробнее, потому что это их основная задача.
Это вот из-за этого на все твои вопросы типа “а почему у меня IDLE повисла? а почему у меня в IDLE там строку не переводит, когда я всё правильно нажимаю? а почему у меня в IDLE там процесс не завершается, который завершился уже минут десять назад?” тебе и отвечают “выкинь IDLE уже наконец, никто её не дорабатывает и баги не исправляет в ней, потому что никому она ни для чего серьёзного не нужна и нужна не будет”.
Что касается
m1r42, что вот ему типа классы нужны, чтобы что-то написать, а написать он не может, потому что вот классы ему не дают использовать, а с классами он якобы сразу всё напишет, только вот ещё немного поучится и подучится, - так это из той же оперы, когда школьник берёт питон и текстовый редактор кода и говорит “ой, что-то у меня ничего не получается написать; наверное, мне надо суперпрофессиональную IDE какую-нибудь поставить, побольше книг скачать, где-то несколько сотен, сохранить их на диске и вот тогда у меня и получится написать игру, я это знаю, я это в кино про Гарри Поттера видел, там он просто махал волшебной палочкой и у него всё получалось, в том числе и на метле летать”. Это всё сказки Венского Леса. Если ты не умеешь просто в редакторе и в консоли программы делать, то и IDE тебе никакая не поможет, какая бы развитая она ни была. Потому что IDE - это для тех, кто
уже умеет в редакторе кода и консоли писать всё и создавать что-то работающее прямо в них без всяких вспомогательных инструментов. Это не волшебная палочка, это инструмент, комплекс, который собирает в себе и редактор, и консоль, и дебаггер, и много чего другого, что требуется вообще на дальнейших этапах развития (типа там тестировочных систем, линтеров, рефакторинговых средств - они все тебе нафиг не нужны на начальных этапах), по мере того как ты растёшь. Если ты не дорос до дебаггера, то зачем он тебе? Ты всё равно ничего с ним не решишь, ни одной задачи или проблемы. Поэтому сначала нужно развить дебаггер в голове, когда ты прямо в голове у себя запускаешь код, ходишь по нему по всем закуткам и тёмным углам и ищешь в этом запущенном в воображении коде ошибки, выходы за границы и тому подобное. Дебаггер нужен тогда, когда ты работаешь с незнакомым кодом. Но до незнакомого кода надо дорасти сначала. Если ты свой код писать не умеешь, то и незнакомый код тебе ничего не даст, ты его просто не поймёшь, потому что не будешь понимать, что делает автор и как он думает.
tags: idle ide