Сначала вам понадобится некоторая библиотека GUI с привязками Python, а затем (если вы хотите) какая-нибудь программа, которая преобразует ваши скрипты Python в автономные исполняемые файлы.
Кроссплатформенные библиотеки GUI с привязками Python (Windows, Linux, Mac)
Конечно, есть много, но самые популярные, которые я видел в дикой природе:
- Tkinter - на основе инструментария Tk GUI (де-факто стандартная библиотека GUI для python, бесплатная для коммерческих проектов)
- WxPython - на основе WxWidgets (популярный, бесплатный для коммерческих проектов)
- Qt используя привязки PyQt или Qt для Python . Первый не является бесплатным для коммерческих проектов. Последний менее зрелый, но может быть использован бесплатно.
Полный список на http://wiki.python.org/moin/GuiProgramming
Единый исполняемый файл (все платформы)
- PyInstaller - самый активный (также может использоваться с
PyQt
)
- fbs - если вы выбрали Qt выше
Единственный исполняемый файл (Windows)
- py2exe - раньше был самым популярным
Единственный исполняемый файл (Linux)
- Freeze - работает так же, как py2exe, но ориентирован на платформу Linux
Один исполняемый файл (Mac)
- py2app - опять же, работает как py2exe, но ориентирован на Mac OS
Другая система (еще не упомянутая в принятом ответе) - это PyInstaller, которая работала для моего проекта PyQt, когда py2exe не работал. Мне было проще в использовании.
http://www.pyinstaller.org/
Pyinstaller основан на установщике Python Гордона Макмиллана. Который больше не доступен.
источник
Альтернативным инструментом для py2exe является bbfreeze, который генерирует исполняемые файлы для Windows и Linux. Это новее, чем py2exe и обрабатывает яйца довольно хорошо. Я обнаружил, что он волшебно работает лучше без конфигурации для широкого спектра приложений.
источник
Есть также PyGTK , который в основном является оболочкой Python для Gnome Toolkit. Я обнаружил, что мне легче сосредоточиться на этом, чем на Tkinter, поскольку он практически не знаком с программированием GUI ранее. Он работает довольно хорошо и имеет несколько хороших уроков. К сожалению, пока нет установщика для Python 2.6 для Windows, и, возможно, пока не будет.
источник
Поскольку python теперь установлен практически во всех операционных системах, отличных от Windows, единственное, в чем вы действительно должны убедиться, это то, что установлены все нестандартные библиотеки, которые вы используете.
Сказав это, можно создать исполняемые файлы, которые включают интерпретатор Python и любые библиотеки, которые вы используете. Однако это может создать большой исполняемый файл.
MacOS X даже включает поддержку в Xcode IDE для создания полностью автономных приложений с графическим интерфейсом. Они могут быть запущены любым пользователем под управлением OS X.
источник
Для самого GUI:
PyQT в значительной степени ссылка.
Другой способ разработки быстрого пользовательского интерфейса - написать веб-приложение, запустить его локально и отобразить приложение в браузере.
Кроме того, если вы выберете вариант Tkinter, предложенный lubos hasko, вы можете попробовать portablepy, чтобы ваше приложение работало в среде Windows без Python.
источник
Я не уверен, что это лучший способ сделать это, но когда я развертываю приложения Ruby GUI (не Python, но имеет ту же самую «проблему», что касается .exe) в Windows, я просто пишу короткий лаунчер в C #, который вызывает мой основной скрипт. Он компилируется в исполняемый файл, а затем у меня есть исполняемый файл приложения.
источник
py2exe
Затем вы должны использовать py2exe, например, чтобы принести в одну папку все файлы, необходимые для запуска приложения, даже если у пользователя нет python на своем компьютере (я говорю о windows ... для apple os нет необходимости о исполняемом файле, я думаю, так как он поставляется с Python без необходимости его установки.
Создать этот файл
1) Создайте setup.py
с этим кодом:
сохранить его в папке
2) Поместите вашу программу в ту же папку, что и setup.py, поместите в эту папку программу, которую вы хотите сделать распространяемой: es: l4h.py
ps: изменить имя файла (с l4h на что угодно, это пример)
3) Запустите cmd из этой папки (в папке щелкните правой кнопкой мыши + shift и выберите здесь start cmd)
4) напишите в cmd:> python setup.py py2exe
5) в папке dist есть все нужные вам файлы
6) вы может распространять и распространять
Pyinstaller
Установите его из cmd
**
**
Запустите его из cmd из папки, где находится файл
**
**
источник
PySimpleGUI оборачивает tkinter и работает на Python 3 и 2.7. Он также работает на Qt, WxPython и в веб-браузере, используя один и тот же исходный код для всех платформ.
Вы можете создавать пользовательские графические интерфейсы, которые используют все те же виджеты, которые вы найдете в tkinter (ползунки, флажки, переключатели, ...). Код имеет тенденцию быть очень компактным и читабельным.
Как объясняется в документации PySimpleGUI , для создания запускаемого файла .EXE :
источник
Вам не нужно компилировать python для Mac / Windows / Linux. Это интерпретируемый язык, поэтому вам просто нужно установить интерпретатор Python в выбранной вами системе (он доступен для всех трех платформ).
Что касается библиотеки GUI, которая работает кроссплатформенно, библиотека виджетов Tk / Tcl в Python работает очень хорошо, и я считаю, что она достаточно кроссплатформенная.
Tkinter - это интерфейс Python для Tk / Tcl
С веб-страницы проекта Python:
источник
Вы можете использовать
appJar
для базовой разработки графического интерфейса.Смотрите документацию на сайте appJar .
Установка производится
pip install appjar
из командной строки.источник
Я был поражен, увидев, что никто не упомянул Kivy !!!
Я когда-то делал проект с использованием Tkinter, хотя они действительно утверждают, что он значительно улучшился, он все еще дает мне ощущение Windows 98, поэтому я переключился на Kivy .
Я следил за серией уроков если это поможет ...
Просто чтобы дать представление о том, как выглядит kivy, посмотрите это (проект, над которым я работаю):
И я работаю над этим всего неделю! О пользе для кивы ты спрашиваешь? Проверьте это
Причина, по которой я выбрал это, это его внешний вид и то, что его можно использовать и в мобильном телефоне.
источник