Консоль Python 3: интерактивный режим и выполнение скриптов
Работа с консолью Python 3
Основной способ
Запуск интерактивного интерпретатора Python 3 в терминале осуществляется командой python3. После ввода открывается приглашение >>>, где можно вводить выражения и команды. Выход из консоли выполняется комбинацией Ctrl+D (Unix) или Ctrl+Z (Windows) либо командой exit().
$ python3
Python 3.10.12 (main, Nov 20 2023, 15:14:05)
[GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 2 + 2
4
>>> print("Привет, мир!")
Привет, мир!
>>> exit()Python команды консоли (команды консоли python)
Этот режим удобен для быстрой проверки небольших фрагментов кода, изучения библиотек и отладки.
Типичные ошибки:
- Команда
python3не найдена - возможно, Python не установлен или добавлен в PATH. Проверьте установку командойwhereis python3илиpy --versionна Windows. - Ошибка синтаксиса при вводе многострочного кода - используйте точки с запятой или переносите строки с отступами.
- Проблемы с кодировкой - для корректного вывода кириллицы убедитесь, что терминал поддерживает UTF-8.
Как выполнить программу, сохраненную в файле?
Для запуска готового скрипта передайте его имя в качестве аргумента: python3 script.py. Интерпретатор выполнит код и завершит работу, если только скрипт не содержит вызов input() или бесконечного цикла.
$ echo 'print("Hello from file")' > hello.py
$ python3 hello.py
Hello from filePython 3 консоль (консоль python 3)
Это основной способ запуска приложений, написанных на Python.
Распространённые неполадки:
- Файл не найден - проверьте путь или используйте абсолютный путь.
- Ошибка импорта - убедитесь, что модули установлены и доступны.
- Проблемы с правами доступа - для исполнения файла в Unix может потребоваться
chmod +x.
Как остаться в интерактивной консоли после выполнения скрипта?
Используйте флаг -i (interactive). После завершения скрипта откроется интерактивное приглашение, где можно продолжить анализ переменных и отладку.
$ python3 -i -c "x=10; y=20"
>>> x + y
30
>>> exit()
Вариант полезен для отладки, тестирования функций и изучения состояния программы.
Если скрипт содержит бесконечный цикл, консоль может не вернуть управление. В таком случае прервите выполнение Ctrl+C.
Как быстро выполнить однострочный код без файла?
Параметр -c (command) позволяет передать строку кода прямо в командной строке.
$ python3 -c "import math; print(math.sqrt(16))"
4.0
Удобно для простых вычислений, быстрого тестирования или интеграции в скрипты командной оболочки.
Используйте кавычки правильно: в Linux одинарные кавычки не интерпретируют переменные shell, а двойные - интерпретируют. Для сложных конструкций лучше применять тройные кавычки или файл.
Как запустить модуль Python как самостоятельную программу?
Флаг -m загружает указанный модуль и выполняет его функцию __main__. Например, встроенный HTTP-сервер:
$ python3 -m http.server 8080
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...
Также можно запускать venv, pip (в некоторых дистрибутивах как модуль), pdb и другие.
Если модуль не найден, проверьте его установку командой pip list. Для некоторых модулей может потребоваться указание версии Python (например, python3.10 -m).
Как изолировать окружение для проекта с помощью виртуальных сред?
Виртуальное окружение создаётся модулем venv:
$ python3 -m venv myenv
$ source myenv/bin/activate # Linux/macOS
$ myenv\Scripts\activate # Windows
(myenv) $ python --version
После активации все вызовы python3 будут использовать изолированный интерпретатор и библиотеки. Это предотвращает конфликты между проектами.
Если venv отсутствует, установите пакет python3-venv (Debian/Ubuntu) или используйте virtualenv. Не активируйте окружение от имени суперпользователя.
Как сделать скрипт исполняемым в Unix-подобных системах?
Добавьте в первую строку файла shebang #!/usr/bin/env python3, затем установите флаг executable:
$ echo '#!/usr/bin/env python3\nprint("Hello")' > script
$ chmod +x script
$ ./script
Hello
Теперь скрипт можно запускать без указания python3. Shebang автоматически подбирает интерпретатор из PATH.
Если python3 не найден по пути /usr/bin/env, укажите прямой путь, например #!/usr/bin/python3. На Windows shebang не работает, используйте ассоциацию файлов .py с Python.
В расширенном примере демонстрируется запуск интерактивной консоли с отладкой и многопоточностью.
$ python3 -i -c "
import threading
def worker():
print('Thread started')
t = threading.Thread(target=worker)
t.start()
t.join()
print('Done')
"
Thread started
Done
>>> print('Interactive after script')
Interactive after script
>>> exit()
Пояснение: флаг -i оставляет консоль открытой, позволяя интерактивно взаимодействовать с объектами после выполнения кода.
Другой пример: вызов модуля pdb для отладки скрипта с ошибкой.
$ cat faulty.py
def div(a, b):
return a / b
x = 1
y = 0
print(div(x, y))
$ python3 -m pdb faulty.py
> /tmp/faulty.py(1)<module>()
-> def div(a, b):
(Pdb) continue
ZeroDivisionError: division by zero
> /tmp/faulty.py(4)<module>()
-> print(div(x, y))
(Pdb) print(y)
0
(Pdb) quit
Трассировка с точкой остановки на месте ошибки.
Также можно запустить скрипт с профилированием:
$ python3 -m cProfile -s time myscript.py
Вывод статистики по времени выполнения каждой функции.