Интерактивная консоль Python (также интерпретатор или оболочка Python) предоставляет программистам быстрый способ выполнить команды и протестировать код, не создавая файл.
Интерактивная консоль предоставляет доступ к истории команд, всем встроенным функциям и установленным модулям Python. Она позволяет использовать автозаполнение, исследовать возможности Python и вставлять код в файлы программирования после проверки.
Этот мануал научит вас работать с интерактивной консолью Python.
Доступ к интерактивной консоли
Доступ к интерактивной консоли Python можно получить с любого локального компьютера или сервера, на котором установлен Python.
Для входа в интерактивную консоль Python используйте команду:
python
Если вы настроили среду разработки, вы можете получить доступ к консоли внутри этой среды. Сначала запустите среду:
cd environments
my_env/bin/activate
Затем откройте консоль:
python
Читайте также:
- Настройка локальной среды разработки для Python 3 в Ubuntu 16.04
- Установка Python 3 и настройка среды разработки на сервере Ubuntu 16.04
В этом случае по умолчанию используется версия Python 3.5.2, которая отображается на выходе вместе с уведомлением об авторских правах и командами для дополнительной информации:
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Поле для ввода следующей команды – три знака больше:
>>>
Вы можете указать определенную версию Python, добавив номер версии в команду без пробелов:
$ python2.7
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Вывод сообщает, что теперь будет использоваться версия Python 2.7.12. Если бы она была версией Python по умолчанию, открыть её интерактивную консоль можно было бы с помощью команды python2.
Чтобы вызвать интерактивную консоль версии Python 3 по умолчанию, нужно ввести:
$ python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Также консоль этой версии можно вызвать с помощью команды:
$ python3.5
Работа с интерактивной консолью Python
Интерактивный интерпретатор Python принимает синтаксис Python, который находится после префикса >>>.
Например, он позволяет присваивать значения переменным:
>>> birth_year = 1868
Читайте также: Использование переменных в Python 3
Вы можете присвоить значения нескольким переменным, чтобы обрабатывать математические операции.
>>> birth_year = 1868
>>> death_year = 1921
>>> age_at_death = death_year - birth_year
>>> print(age_at_death)
53
>>>
Читайте также: Математические вычисления в Python 3
Как и в файле, в консоли можно задать значения переменных, выполнить математическую операцию и запросить результат.
Интерактивную консоль можно использовать как калькулятор.
>>> 203 / 20
10.15
>>>
Многострочный код Python в консоли
При создании многострочного кода в консоли интерпретатор Python использует троеточие (…) в качестве вспомогательной строки.
Чтобы выйти из вспомогательной строки, нужно дважды нажать Enter.
Чтобы понять, как это работает, рассмотрите этот код, который задает значения двум переменным и использует условное выражение, чтобы определить вывод.
>>> 8host = '8host'
>>> blog = 'blog'
>>> if len(8host) > len(blog):
... print('8host codes in Java.')
... else:
... print('8host codes in Python.')
...
8host codes in Java.
>>>
Читайте также: Условные операторы в Python 3
В данном случае первая строка длиннее, чем вторая, потому срабатывает первое условие и программа выводит соответствующую строку.
Читайте также: Основы работы со строками в Python 3
Обратите внимание, при этом нужно соблюдать соглашение об отступах Python (четыре пробела), иначе вы получите сообщение об ошибке:
>>> if len(8host) > len(blog):
... print('8host codes in Java.')
File "<stdin>", line 2
print('8host codes in Java.')
^
IndentationError: expected an indented block
>>>
Импорт модулей
Интерпретатор Python позволяет быстро проверить, доступны ли те или иные модули в определенной среде программирования. Для этого существует оператор import:
>>> import matplotlib
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'matplotlib'
В данном случае библиотека matplotlib недоступна в текущей среде.
Читайте также: Визуализация данных Python 3 с помощью matplotlib
Чтобы установить эту библиотеку, используйте pip.
pip install matplotlib
Collecting matplotlib
Downloading matplotlib-2.0.2-cp35-cp35m-manylinux1_x86_64.whl (14.6MB)
...
Installing collected packages: pyparsing, cycler, python-dateutil, numpy, pytz, matplotlib
Successfully installed cycler-0.10.0 matplotlib-2.0.2 numpy-1.13.0 pyparsing-2.2.0 python-dateutil-2.6.0 pytz-2017.2
Установив модуль matplotlib и его зависимости, вы можете вернуться в интерактивный интерпретатор.
(my_env) 8host@ubuntu:~/environments$ python
>>>import matplotlib
>>>
Теперь вы можете использовать импортированный модуль в этой среде.
Выход из интерактивной консоли Python
Закрыть консоль Python можно двумя способами: с помощью клавиатуры или с помощью функции Python.
Чтобы закрыть консоль, можно нажать на клавиатуре Ctrl + D в *nix-подобных системах или Ctrl + Z + Ctrl в Windows.
>>> age_at_death = death_year - birth_year
gt;>> print(age_at_death)
53
>>>
8host@ubuntu:~/environments$
Также в Python есть функция quit(), которая закрывает консоль и возвращает вас в стандартный терминал.
>>> octopus = 'Ollie'
>>> quit()
8host@PythonUbuntu:~/environments$
Функция quit() записывается в историю, а комбинации клавиш – нет. Это следует учитывать при выходе из консоли. Откройте файл истории /home/8host /.python_history
...
age_at_death = death_year - birth_year
print(age_at_death)
octopus = 'Ollie'
quit()
История консоли Python
Еще одним преимуществом интерактивной консоли Python является история. Все команды регистрируются в файле .python_history (в *nix-подобных системах).
nano ~/.python_history
На данный момент файл истории Python выглядит так:
import pygame
quit()
if 10 > 5:
print("hello, world")
else:
print("nope")
8host = '8host'
blog = 'blog'
...
Чтобы закрыть файл, нажмите Ctrl + X.
Отслеживая историю, вы можете вернуться к предыдущим командам, скопировать, вставить или изменить этот код, а затем использовать его в файлах программы или Jupyter Notebook.
Читайте также: Установка Jupyter Notebook для Python 3
Заключение
Интерактивная консоль Python предоставляет пространство для экспериментов с кодом Python. Вы можете использовать ее как инструмент для тестирования, разработки логики программы и многого другого.
Для отладки файлов программы Python вы можете использовать модуль code и открыть интерактивный интерпретатор внутри файла.
Читайте также: Отладка программ Python с помощью интерактивной консоли