Для запуска Python-скриптов через командную строку используется интерпретатор Python, установленный в системе. В Windows его вызывают через команду python или py, в зависимости от конфигурации. В Linux и macOS – обычно python3. Перед запуском стоит убедиться, что путь к исполняемому файлу Python добавлен в переменную окружения PATH.
Минимальный пример запуска: python script.py, где script.py – путь к файлу. Если используется виртуальное окружение, сначала его нужно активировать. В Windows: venv\Scripts\activate, в Unix-системах: source venv/bin/activate.
Можно передавать аргументы в скрипт: python script.py arg1 arg2. Их обработку внутри кода удобно реализовать с помощью модуля sys или argparse. Для проверки версии Python выполните команду python —version или python -V.
При отладке удобно использовать ключ -i для запуска в интерактивном режиме после выполнения скрипта: python -i script.py. Если требуется выполнить отдельную строку кода без сохранения в файл, используйте ключ -c: python -c «print(‘Пример’)» .
Для автоматизации можно использовать пакетный файл (.bat) или shell-скрипт с командой запуска. Это позволяет запускать Python-код двойным щелчком мыши или через планировщик заданий.
Как выполнить .py-файл через командную строку Windows
Откройте командную строку: нажмите Win + R, введите cmd
и нажмите Enter.
Перейдите в папку, где находится файл. Например, если файл лежит на рабочем столе, используйте команду cd %USERPROFILE%\Desktop
.
Проверьте, установлен ли Python. Введите python --version
или py --version
. Если система сообщает об ошибке, добавьте Python в переменную среды PATH или используйте полный путь к интерпретатору.
Если установлен Python 3 и он доступен через py
, выполните файл так: py имя_файла.py
. Если используете python
, команда будет: python имя_файла.py
.
Если файл требует аргументы, добавьте их после имени файла: py скрипт.py аргумент1 аргумент2
.
При наличии нескольких версий Python используйте явное указание: py -3.11 скрипт.py
– для запуска через Python 3.11.
Если файл запускается двойным щелчком мыши, но окно сразу закрывается, откройте его через командную строку, чтобы увидеть сообщения об ошибках.
Запуск Python-скрипта с аргументами командной строки
Для передачи данных в Python-скрипт через командную строку используется модуль sys
. Аргументы передаются после имени файла и доступны через sys.argv
– список, где первый элемент sys.argv[0]
содержит путь к самому скрипту, а последующие – переданные значения.
Пример скрипта calc.py
, принимающего два числа и операцию:
import sys
if len(sys.argv) != 4:
print("Использование: python calc.py число1 операция число2")
sys.exit(1)
a = float(sys.argv[1])
op = sys.argv[2]
b = float(sys.argv[3])
if op == "+":
print(a + b)
elif op == "-":
print(a - b)
elif op == "*":
print(a * b)
elif op == "/":
if b == 0:
print("Ошибка: деление на ноль")
else:
print(a / b)
else:
print("Неизвестная операция")
Запуск: python calc.py 5 * 3
. Результат: 15.0
.
Для более гибкой обработки аргументов предпочтительнее использовать argparse
. Этот модуль автоматически создаёт справку и проверяет типы данных.
Пример скрипта с argparse
:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("x", type=float)
parser.add_argument("op", choices=["+", "-", "*", "/"])
parser.add_argument("y", type=float)
args = parser.parse_args()
if args.op == "+":
print(args.x + args.y)
elif args.op == "-":
print(args.x - args.y)
elif args.op == "*":
print(args.x * args.y)
else:
if args.y == 0:
print("Ошибка: деление на ноль")
else:
print(args.x / args.y)
Пример запуска: python calc.py 8 / 2
. Аргументы можно сделать именованными, добавив флаги: parser.add_argument("--x", type=float, required=True)
. В этом случае скрипт вызывается так: python calc.py --x 8 --op / --y 2
.
Указание версии Python при наличии нескольких установленных интерпретаторов
Если в системе установлено несколько версий Python, необходимо явно указывать нужную при запуске скриптов. Иначе будет использован интерпретатор, связанный с командой python
по умолчанию, что может привести к ошибкам совместимости.
- Для запуска с конкретной версией используйте явную команду:
python3.10 script.py
python3.12 script.py
- Проверьте доступные версии:
where python
в Windowswhich -a python
илиls /usr/bin/python*
в Linux/macOS
- Создайте псевдонимы через переменные окружения или файл
.bashrc
:alias py310='/usr/bin/python3.10'
alias py312='/usr/bin/python3.12'
- В Windows можно использовать полные пути:
"C:\Python310\python.exe" script.py
"C:\Python312\python.exe" script.py
- Если используется
py
(Windows), добавьте версию после флага:py -3.10 script.py
py -3.12 script.py
Для автоматизации можно использовать shebang в Unix-подобных системах:
#!/usr/bin/env python3.10
Убедитесь, что файл исполняемый: chmod +x script.py
.
Настройка переменной среды PATH для запуска Python из любого каталога
Чтобы запускать Python через командную строку без указания полного пути, нужно добавить путь к его исполняемому файлу в переменную среды PATH.
Для Windows:
- Откройте Пуск → «Система» → «О системе» → «Дополнительные параметры системы».
- Нажмите «Переменные среды».
- В разделе «Системные переменные» найдите переменную
Path
и нажмите «Изменить». - Добавьте путь к каталогу, где находится
python.exe
, например:C:\Python311\
. - Если используется
Scripts
-каталог (для pip), добавьте также:C:\Python311\Scripts\
. - Сохраните изменения и перезапустите командную строку.
Для macOS и Linux:
- Откройте терминал.
- Определите путь к Python, выполнив
which python3
илиwhich python
. - Откройте файл
~/.bashrc
,~/.zshrc
или~/.profile
(в зависимости от используемой оболочки). - Добавьте строку
export PATH="/путь/к/python:$PATH"
, заменив/путь/к/python
на фактический путь, например:/usr/local/bin
. - Сохраните файл и выполните
source ~/.bashrc
(или соответствующий файл), чтобы применить изменения.
Проверка:
- Откройте новое окно командной строки или терминала.
- Введите
python --version
илиpython3 --version
. - Если путь указан верно, отобразится установленная версия Python.
Запуск кода Python напрямую из командной строки без создания файла
Для однострочного кода используйте флаг -c
. Это позволяет выполнять команды без создания скрипта:
python -c "print('Привет, мир')"
Можно импортировать модули и использовать конструкции языка:
python -c "import math; print(math.sqrt(16))"
Поддерживаются многострочные конструкции с использованием точек с запятой, но читаемость быстро теряется. Например:
python -c "for i in range(3): print(i); print('---')"
Для сложных выражений предпочтительнее использовать интерактивный режим. Вызовите его просто:
python
После этого можно выполнять код построчно в REPL-среде. Для выхода используйте exit()
или сочетание Ctrl+D
(в Unix) / Ctrl+Z
(в Windows).
Альтернатива – передача stdin через echo или heredoc:
echo "print('Пример')" | python
python <<END
for i in range(2):
print(f"Число {i}")
END
Такой способ подходит для временных блоков кода и сценариев, генерируемых другими программами. Следует избегать интерполяции оболочки, если в коде встречаются спецсимволы, например $
или кавычки. В таких случаях используйте экранирование или одинарные кавычки.
Выполнение скриптов Python с помощью командного файла.bat
Для автоматизации запуска Python-скриптов в Windows можно использовать командные файлы (.bat). Такой подход позволяет запускать Python-код без необходимости вручную открывать командную строку и вводить команды. Это полезно для регулярных задач или когда требуется сделать процесс запуска более удобным.
Чтобы создать командный файл для выполнения Python-скрипта, выполните следующие шаги:
1. Откройте текстовый редактор (например, Notepad) и создайте новый файл.
2. Введите команду для запуска вашего Python-скрипта. Например:
python C:\путь\к\вашему\скрипту.py
3. Сохраните файл с расширением .bat. Например, «run_script.bat». Теперь при двойном щелчке на этом файле будет запускаться ваш скрипт.
Если Python не установлен в системной переменной PATH, используйте полный путь к исполняемому файлу Python. Например:
C:\путь\к\python.exe C:\путь\к\вашему\скрипту.py
echo Запуск скрипта... python C:\путь\к\вашему\скрипту.py echo Скрипт завершен.
Если скрипт требует использования определенной среды, например, виртуальной среды Python, можно активировать её в командном файле:
call C:\путь\к\вашей\виртуальной_среде\Scripts\activate.bat python C:\путь\к\вашему\скрипту.py deactivate
Такой подход позволяет легко запускать скрипты Python в различных контекстах и на разных машинах, обеспечивая автоматизацию без необходимости вручную вводить команды в командной строке.
При запуске Python-скриптов через командную строку часто возникает необходимость в отладке ошибок. Для этого полезно учитывать несколько методов, которые помогут быстро выявить и исправить проблемы.
Обработка ошибок с использованием конструкций try/except
Самый простой способ обработки ошибок в Python – это использование блоков try
и except
. Этот подход позволяет избежать аварийного завершения программы, если возникнут непредвиденные ошибки. Пример:
try:
# Ваш код
except Exception as e:
print(f"Произошла ошибка: {e}")
python -v script.py
Этот флаг активирует подробный режим, который отображает все импортируемые модули и выполняемые строки кода.
Логирование ошибок
Еще один способ – это логирование ошибок с помощью встроенного модуля logging
. Включение логирования помогает фиксировать ошибки и другую информацию, что полезно для последующего анализа. Пример настройки логирования:
import logging
logging.basicConfig(level=logging.DEBUG)
logging.debug("Отладочная информация")
logging.error("Ошибка")
Использование print для диагностики
Простой, но эффективный способ отладки – вставка print
в код для отслеживания значений переменных или выявления мест возникновения ошибок. Это поможет в ситуации, когда нужно понять, на каком этапе код выходит из строя.
Просмотр traceback
Если скрипт завершился с ошибкой, Python предоставляет traceback – подробную информацию о месте возникновения ошибки. Это поможет понять, в какой строке произошла ошибка и какой код был выполнен до этого момента. Например:
Traceback (most recent call last):
File "script.py", line 3, in
print(10 / 0)
ZeroDivisionError: division by zero
Для большинства ошибок в Python traceback даёт достаточно информации, чтобы быстро понять причину сбоя и исправить её.
Вопрос-ответ:
Как запустить Python-скрипт через командную строку в Windows?
Чтобы запустить Python-скрипт через командную строку в Windows, нужно выполнить несколько шагов. Сначала откройте командную строку (нажмите Win + R, затем введите «cmd»). Перейдите в папку, где находится ваш скрипт, с помощью команды `cd путь_к_папке`. После этого введите команду `python имя_скрипта.py` и нажмите Enter. Если Python не установлен или не добавлен в PATH, нужно будет сначала установить его и настроить системную переменную PATH.
Что делать, если при попытке запустить Python-скрипт через командную строку появляется ошибка «python не является внутренней или внешней командой»?
Ошибка «python не является внутренней или внешней командой» возникает, когда Python не добавлен в системную переменную PATH. Чтобы исправить это, нужно открыть «Свойства системы», затем выбрать «Переменные среды». В разделе «Системные переменные» найдите переменную PATH и добавьте путь к папке с исполнимым файлом Python (например, `C:\Python39`). После этого перезапустите командную строку, и Python будет доступен для запуска.
Можно ли запускать Python-скрипт, не переходя в его директорию?
Да, можно. Чтобы запустить Python-скрипт из любой директории, нужно указать полный путь к файлу в командной строке. Например, если скрипт находится в папке `C:\Users\Username\Documents\script.py`, вы можете запустить его с помощью команды `python C:\Users\Username\Documents\script.py`. Важно, чтобы путь был корректно прописан и не содержал ошибок.