Почему использование интерактивный режим Python?

Когда я сначала начал читать о Python, все учебные руководства сделали, чтобы Вы использовали Интерактивный режим Python. Трудно сохранить, записать длинные программы или отредактировать Ваши существующие строки (для меня, по крайней мере). Это походит на намного более трудный способ написать код Python, чем открытие code.py файла и выполнение интерпретатора на том файле.

python code.py

Я происхожу из среды Java, таким образом, я внушил ожидания записи и компиляции файлов для программ. Я также знаю, что черта не была бы настолько яркой в документации Python, если бы это не было так или иначе полезно. Таким образом, что я пропускаю?

22
задан Mantas Vidutis 19 April 2010 в 01:39
поделиться

10 ответов

Давайте посмотрим:

  • Если вы хотите узнать, как что-то работает, вы можете просто попробовать. Нет необходимости писать файл. Я почти всегда пишу свои программы в интерпретаторе перед кодированием. Это касается не только тех вещей, о которых вы не знаете, как они работают в языке программирования. Я никогда не помню, какие правильные аргументы у range, чтобы создать, например, [-2, -1, 0, 1]. А мне это и не нужно. Мне просто нужно запустить интерпретатор и пробовать, пока я не пойму, что это range(-2, 2) (на самом деле я сделал это только что).

  • Вы можете использовать его как калькулятор.

  • Python - очень интроспективный язык программирования. Если вы хотите узнать что-нибудь об объекте, вы можете просто сделать dir(object). Если вы используете IPython, вы можете даже сделать object., и он заполнит методы и атрибуты этого объекта. Это намного быстрее, чем искать что-то в документации или даже в коде.

  • help(anything) для документации. Это намного быстрее, чем любой веб-интерфейс.

  • Опять же, вы должны использовать IPython (настоятельно рекомендуется), но вы можете засекать время. %timeit func1() и %timeit func2() - обычная идиома для определения того, что быстрее.

  • Как часто вы хотели написать программу, которую можно использовать один раз и больше никогда. Самый быстрый способ сделать это - просто сделать это в интерпретаторе Python. Конечно, нужно быть осторожным при написании циклов или функций (они должны иметь правильный синтаксис с первого раза), но большинство вещей просто строка за строкой, и вы можете играть с ними.

  • Отладка. Вам не нужно вставлять в код выборочные операторы печати, чтобы увидеть, какие переменные есть, когда вы пишете его в интерпретаторе. Достаточно набрать >>> a, и он покажет, что такое a. Приятно еще раз проверить, правильно ли вы что-то построили. Создаваемый Python-отладчик pdb также использует функцию intrepeter, так что вы можете не только видеть, что представляет собой переменная при отладке, но и манипулировать или даже изменять ее, не прекращая отладку.

Когда люди говорят, что на Python быстрее разрабатывать, я гарантирую, что это большая часть того, о чем они говорят.

Комментаторы: что-нибудь я забыл?

38
ответ дан 29 November 2019 в 03:38
поделиться

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

Помимо встроенной консоли, я также рекомендую Pyshell . Он имеет автозаполнение и приличную подсветку синтаксиса. Вы также можете редактировать сразу несколько строк кода. Конечно, это не идеально, но, безусловно, лучше, чем консоль Python по умолчанию.

2
ответ дан 29 November 2019 в 03:38
поделиться

Я использую интерактивный режим для одного, о котором другие не упомянули: чтобы узнать, установлен ли модуль. Просто запустите Python и попробуйте импортировать модуль; если он умирает, значит, ваш PYTHONPATH сломан или модуль не установлен.

Это отличный первый шаг для устранения ошибок типа «Эй, он не работает на моей машине» или «Какой Python это сделал?».

2
ответ дан 29 November 2019 в 03:38
поделиться

При кодировании на Java вы почти всегда будете открывать API в каком-либо окне браузера. Однако с интерпретатором Python вы всегда можете импортировать любой модуль, который вы думаете использовать, и проверить, что он предлагает. Вы также можете протестировать поведение новых методов, в которых вы не уверены, чтобы исключить «О! Так вот как это работает» как источник ошибок.

1
ответ дан 29 November 2019 в 03:38
поделиться

Как уже упоминалось, интерактивный интерпретатор Python предоставляет быстрый и грязный способ тестирования простых функций Python и / или фрагментов кода.

Я лично использую оболочку Python как очень быстрый способ выполнения простых числовых операций (предоставляемых модулем math ). У меня есть настройка среды, поэтому математический модуль автоматически импортируется всякий раз, когда я запускаю оболочку Python. Фактически, это хороший способ «продать» Python непитонистам. Покажите им, как они могут использовать Python в качестве изящного научного калькулятора и для простого математического прототипирования.

2
ответ дан 29 November 2019 в 03:38
поделиться

Интерпретатор Python является наименее распространенным знаменателем: вы можете запускать его на нескольких платформах, и он действует одинаково (по модулю модулей, зависящих от платформы), поэтому с ним довольно легко завести новичка.

Намного легче сказать новичку запустить интерпретатор и «сделать это», чем заставить его открыть файл, ввести какой-то код, сохранить его, сделать его исполняемым, убедиться, что python находится в вашем PATH, или использовать а #! строка и т.д. и т.п. Избавьтесь от всего этого и просто запустите интерпретатор. Для простых примеров вы не сможете победить. Он никогда не предназначался для длинных программ, поэтому, если вы использовали его для этого, вы, вероятно, пропустили ту часть учебника, в которой говорилось, что «более длинные скрипты помещаются в файл». :)

2
ответ дан 29 November 2019 в 03:38
поделиться

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

2
ответ дан 29 November 2019 в 03:38
поделиться

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

0
ответ дан 29 November 2019 в 03:38
поделиться

Циклы REPL (например, интерактивный режим Python) обеспечивают немедленную обратную связь с программистом. Таким образом, вы можете быстро писать и тестировать небольшие фрагменты кода и собирать эти фрагменты в более крупную программу.

14
ответ дан 29 November 2019 в 03:38
поделиться

Вы говорите о запуске Python в консоли, просто набрав «python»? Это просто для небольших тестов и для практики с языком. Это очень полезно при изучении языка и тестировании других модулей.

Конечно, любой реальный программный проект написан в файлах .py, а затем выполняется интерпретатором!

5
ответ дан 29 November 2019 в 03:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: