Я намагаюся використовувати Automator на macOS 10.12 для запуску сценарію Python 3. Сценарій працює чудово, коли я запускаю його з терміналу командою: python3 my_script.py
.
Автоматизатор має функцію "Запустити скрипт оболонки", яка використовує оболонку / bin / bash. Оболонка буде запускати скрипти з командою: python my_script.py
, але це, здається, працює лише для сценаріїв, написаних на Python 2.7.
Мій сценарій починається з #!/usr/bin/env python3
, що я думав, що він спрямовує оболонку до правильного інтерпретатора пітона, але це, мабуть, не так.
Як вирішення, я можу змусити запустити сценарій, якщо вставити повний шлях до інтерпретатора python: /Library/Frameworks/Python.framework/Versions/3.5/bin/python3
, але я вважаю це неоптимальним, оскільки команди можуть не працювати, якщо / коли я оновлюю до Python 3.6.
Чи є кращий спосіб направити оболонку / bin / bash для запуску сценаріїв Python3?
Відповіді:
2 для відповіді № 1Оскільки у вас є лінія shebang, ви можете це зробити ./my_script.py
і він повинен працювати з Python 3.
-1 для відповіді № 2
Людина. Я "манекен" на Mac, але пропоную вам спочатку використовувати Python 3.4. Це найбільш стабільна версія Python 3. В іншому випадку ваш "спосіб вирішення" - це правильний спосіб його здобути (шлях шляху).