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

Я работаю над приложением, которое должно быть кроссплатформенным. Я хотел бы использовать для этого Python и ищу инструменты графического интерфейса, которые сделают программирование интерфейса простым и легким. После небольшой охоты я нашел PythonCard . Похоже, это полностью соответствует требованиям, но я не уверен, можно ли будет скомпилировать это до подходящего исполняемого файла для каждой операционной системы. Я нашел эти инструкции, но им 6 лет.

Какое бы решение я ни выбрал, оно должно поддерживать следующее:

  • Напишите один графический интерфейс для работы как в Windows, так и в Mac OSX
  • Должен ' компилировать в легко распространяемый файл для Windows / Mac
  • Скомпилированный файл не должен требовать установки Python на компьютер пользователя

Может ли кто-нибудь порекомендовать библиотеку / решение, прежде чем мне придется пробираться в пустынный мир Java?

10
задан benregn 26 January 2012 в 10:48
поделиться

5 ответов

Я думаю, что ответ здесь не столько о конкретном наборе инструментов GUI, сколько о распространении автономных приложений Python. Лично я нашел инструменты для этого немного менее совершенными, чем мне хотелось бы, но после некоторых махинаций они выполняют свою работу. Наиболее вероятным кандидатом, который подойдет вам, является cx_Freeze. Хотя есть специальное py2exe для Windows и py2app для Mac, которые могут заполнить счет, если cx_Freeze недостаточно.

4
ответ дан 4 December 2019 в 02:24
поделиться

Хм.

Может быть, лучше перенести мой пост в комментарии, но. Почему вы хотите «скомпилировать» код Python и почему вы думаете, что какая-то структура графического интерфейса должна предоставлять некоторые средства для упаковки/установки?

В нашей компании мы написали кроссплатформенное приложение с графическим интерфейсом, и, конечно же, мы должны сделать его удобным для клиентов. Итак, мы нашли подходящий GUI-фреймворк с привязками к python (Qt), затем выбрали метод, чтобы скрыть ненужные подробности о реализации и исчезнуть зависимости (Py2Exe для Windows, Py2App для Mac и ничего для linux, но вы можете попробовать PyInstaller или cx- заморозить).

Установка для каждой ОС, сделанная способом этой ОС, по принципу наименьшего удивления. Вот почему мы не упаковывали Linux-версию в какие-то бинарные исполняемые файлы.

0
ответ дан 4 December 2019 в 02:24
поделиться

Если вы хотите, чтобы ваше приложение выглядело и работало как родное, wxPython — это то, что вам нужно. PyQt может выглядеть нативным, но не похоже, что он всегда ведет себя нативным образом (согласно некоторым темам, которые я читал). Для создания двоичных файлов используйте py2exe или что-то подобное для Windows и py2app для Mac

.
0
ответ дан 4 December 2019 в 02:24
поделиться

Для дизайнеров Wxpython GUI отметьте этот вопрос. Я кратко попробовал boa-contstructor, но нашел его слишком ограничивающим, так как поддерживаются не все виджеты. Насколько я знаю, ни один из дизайнеров wxpython не поддерживает все виджеты (по крайней мере, из коробки).

Лично я считаю, что быстрее и проще вручную кодировать мой графический интерфейс. Я бы сказал, что мне потребовалось всего несколько дней, чтобы стать достаточно удобным/знакомым с wxpython. Если вам нужно сделать что-то еще, кроме создания простого приложения, то, потратив немного времени на изучение wxpython, вы получите свои дивиденды.

Если вы привязаны к идее иметь дизайнера графического интерфейса, то вам, вероятно, лучше всего подойдет PyQt, поскольку этот ИМХО является единственным набором инструментов, который имеет надежный зрелый редактор — Qt Designer

Что касается создания автономных исполняемых файлов, то я использовал только py2exe для Windows. py2app делает то же самое для Mac, хотя я еще не пробовал.

Для установщиков Windows проверьте эту тему

0
ответ дан 4 December 2019 в 02:24
поделиться

Используйте PyInstaller для распространения приложения с помощью графических инструментов PyQt или WxPython. С веб-сайта:

PyInstaller — это программа, которая преобразует (упаковывает) программы Python в автономные исполняемые файлы для Windows, Linux и Mac OS X.

Что касается инструментов графического интерфейса, PyInstaller задокументирован для работы с Qt3, Qt4 и WxPython.

Участник StackOverflow dF использует PyInstaller «для приложения, которое зависит от PyQt, PyQwt, numpy, scipy и некоторых других».

4
ответ дан 4 December 2019 в 02:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: