Quickie: Python, терминал «Команда печати не найдена»
-
29-09-2019 - |
Вопрос
Использовал терминал для запуска сценариев Python, написанных в Textwrangler в течение 18 месяцев. Решил взглянуть на возможность переезда в IDE, который загрузил пару пробных версий. Только что скачал BBEEDIT и внезапно возникает проблемы с выполнением сценария, либо из BBEDIT, либо Textwrangler. Следующий код:
print "Please work"
for i in range(50):
print i
дает следующее сообщение об ошибке:
/Users/paulpatterson/Documents/Python/Scripts/t.py: line 1: print: command not found
/Users/paulpatterson/Documents/Python/Scripts/t.py: line 3: syntax error near unexpected token `('
/Users/paulpatterson/Documents/Python/Scripts/t.py: line 3: `for i in range(50):'
Некоторые файлы по -прежнему работают нормально, но я изо всех сил пытаюсь выяснить, почему теперь другие не являются - даже не уверен, что загрузка BBEDIT вызвала проблему. Кто -нибудь может помочь?
Решение
Попробуй положить
#!/usr/bin/env python
В верхней части сценария. Программа пытается выполнить его, как скрипт оболочки вместо того, чтобы запускать его через Python.
Другие советы
Он запускает скрипт в виде сценария оболочки, а не сценарий Python.
Кроме того, имейте в виду, что эта форма печати (Print-As Command) меняется на печать как функцию, когда вы конвертируете в Python 3. Итак:
print "please work"
должен быть изменен на:
print ("please work")