Есть ли способ превратить программу Python, в которой пользователь использует терминал (без графического интерфейса), в автономную программу для Mac?

Я наконец-то заставил py2app работать, и моя программа была готова. Однако он не откроется, потому что он зависит от терминала и raw_input. Я только что узнал, что py2app больше подходит для интерфейсов с графическим интерфейсом.

Все, что я хочу, это превратить программу в приложение, которое мои пользователи смогут щелкнуть, и оно откроется в Терминале. Им не нужно либо устанавливать Python, либо идти в терминал и набирать python "filename" (кроме того, разве им не нужно настраивать пути и все остальное для этого?).

Пожалуйста помоги; Рву на себе волосы весь день в поисках ответа. Если это невозможно, я просто дам им файл .py и поручу им запустить его с помощью python в терминале и надеюсь, что он уже настроен, чтобы они могли это сделать.


person user1159454    schedule 04.08.2013    source источник
comment
Исследуйте команду open (man 1 open). Использование open -n /Applications/Utilities/Terminal.app запускает новый Терминал. Я еще не разобрался, как указать команду для запуска. Python установлен в /usr/bin, поэтому он должен быть доступен без дополнительной настройки.   -  person Jonathan Leffler    schedule 04.08.2013
comment
Хорошо, спасибо, но разве им все равно не придется заходить в Терминал, чтобы ввести команду открытия?   -  person user1159454    schedule 04.08.2013
comment
Вы должны иметь возможность создать что-то кликабельное, запускающее терминал — возможно, с помощью open или, возможно, с помощью другого механизма. Я был чертовски ленив, чтобы понять, как это сделать.   -  person Jonathan Leffler    schedule 04.08.2013


Ответы (2)


Я знаю, что на Mac вы меняете расширение файла на .command, и это сделает его таким, чтобы вы могли просто щелкнуть по нему, и он будет работать через терминал, если это указано для этого. Однако я не уверен, что это сработает, если на самом деле у них не установлен python.

person Argiri Kotsaris    schedule 04.08.2013
comment
Привет, спасибо за ответ. Я пробовал это, но теперь при открытии выдает сообщение об ошибке о разрешениях. Я проверил разрешения, и всем разрешено читать и писать, поэтому я не знаю - person user1159454; 04.08.2013
comment
Да, это досадный недостаток этого метода: вам придется запускать chmod 777 /path/to/file, чтобы каждый мог выполнить его... Хотя я пока не нашел гораздо лучшего метода, чем этот. - person Argiri Kotsaris; 04.08.2013
comment
Хм, я сделал chmod, и он открылся, но сломался, потому что не мог импортировать вещи (у него есть несколько импортов). Ладно, забудь, я просто опубликую для них весь сценарий. Спасибо! - person user1159454; 04.08.2013
comment
@user: Просто чтобы вы знали, должно быть возможно заставить это работать с разумным импортом. Включение импорта является основной функцией как py2app, так и pyinstaller. - person tom10; 04.08.2013

С помощью PyInstaller http://www.pyinstaller.org/ можно создать исполняемый файл для разных платформ. Я считаю, что OSX поддерживается.

person Kalail    schedule 04.08.2013