Запуск файла Python в терминале

Пытаюсь научиться регулярно запускать свои скрипты через терминал Ubuntu. При этом я знаком с bash, wget, и awk вызывается, но как мне вызвать файлы python для запуска в терминале? Я хотел бы изучить это, но я не уверен, где это исследовать. У меня есть .pyw файл, который ссылается на несколько .py файлы в папке.

Вариант 1: Вызовите переводчика

  • Для Python 2: python <filename>.py
  • Для Python 3: python3 <filename>.py

Вариант 2: Пусть скрипт вызовет интерпретатор

  1. Убедитесь, что в первой строке вашего файла есть #!/usr/bin/env python.
  2. Сделайте его исполняемым - chmod +x <filename>.py.
  3. И запустите его как ./<filename>.py

Просто префикс имени файла скрипта с python. Например.:

python filename.py

Также стоит упомянуть, что, добавив -i флаг после python, вы можете продолжить свой сеанс для дальнейшего кодирования. Подобный этому:

python -i <file_name.py>
python <filename.py>

Я думаю, что pyw должен работать таким же образом. Вы также можете запустить интерактивную консоль с помощью всего лишь

python

Кроме того, вы можете избежать необходимости явно вызывать python, добавив shebang в верхней части скрипта:

#!/usr/bin/env python

... или любое количество их вариаций

Сначала выполните следующую команду

chmod +x <filename>.py

Затем в верхней части скрипта добавьте #! и путь к интерпретатору Python:

#!/usr/bin/python

Если вы хотите, чтобы сценарий не зависел от того, где находится интерпретатор Python, вы можете использовать env программа. Почти все варианты Unix поддерживают следующее, предполагая, что интерпретатор Python находится в каталоге в пользовательском $PATH:

#! /usr/bin/env python

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

python <filename>.py  # for Python 2.x  python3 <filename>.py # for Python 3.x 

В качестве альтернативы выполните одну из следующих двух команд:

python /path/to/<filename>.py  # for Python 2.x  python3 /path/to/<filename>.py # for Python 3.x 

Попробуйте использовать команду python3 вместо python. Если скрипт был написан на Python3, и вы попытаетесь запустить его с помощью Python2, у вас могут возникнуть проблемы. В Ubuntu есть и то, и другое; изменение имени программы на python3 (вместо замены python) сделал это возможным. Ubuntu нуждается в версии v2.7 (по состоянию на 16.02.2017), поэтому НЕ удаляйте и не удаляйте Python2, а сохраните их оба. Заведите привычку использовать Python3 для запуска скриптов, которые могут запускать либо то, либо другое.

Дифференциальный случай в следующем, потому что исходное название слишком общее, включая его - о запуске скрипта python в терминале для вызова
функции Running python functions from terminal - Stack Overflow