Python GUI App Distribution: écrit en wxPython, TKinter ou QT
ma question porte sur la facilité de distribution de l'application GUI à travers les plateformes (Mac/Linux/Windows), et je veux savoir celle qui rend le travail de l'utilisateur plus facile.
ma compréhension actuelle est que l'application Tkinter est la plus facile pour les utilisateurs (à installer) parce que tant que l'Utilisateur a installé un Python dans sa boîte, mon application devrait être prête à fonctionner sur cette boîte.
pour L'application GUI écrite en wxPython ou pyQT, l'utilisateur doit installer wxWidget ou QT en sa boîte d'abord, ce qui est une étape supplémentaire, puis installer mon application GUI. (Mais ma boîte Ubuntu semble avoir les bibliothèques wxWidget et les bibliothèques QT installées par défaut, est-ce une norme ou juste une distribution Ubuntu est plus conviviale pour les utilisateurs? Je suppose que Windows et Mac ne les fournissent probablement pas par defualt, c'est à dire. les utilisateurs doivent télécharger et de les installer comme une étape supplémentaire)
3 réponses
si vous utilisez Kubuntu, PyQt sera installé par défaut. La plupart des distributions linux auront un de PyGtk ou PyQt installé par défaut. WxPython a probablement été installé dans votre boîte Ubuntu comme une dépendance pour un autre paquet de votre système.
si votre marché cible est Linux, vous pouvez simplement créer un paquet deb ou rpm qui s'occupera des dépendances de votre application.
Pour Windows et Mac (et même linux si vous êtes si enclin) vous pouvez regroupez l'interpréteur python avec votre application et ses bibliothèques dans un format exécutable natif tel que
comme. exe ou .utiliser des bibliothèques comme cx_freeze
,py2exe
et py2app
. Une fois cela fait, votre utilisateur n'aura pas à installer python
ou de l'une de vos bibliothèques.
Tkinter est le seul qui est inclus avec Python. wxPython et pyQT ont besoin des deux bibliothèques wxWindows ou QT et les bibliothèques wxPython ou pyQT à installer sur le système.
cependant, Tk n'est pas très jolie. Si vous faites déjà installer Python par L'utilisateur, vous pouvez tout aussi bien leur faire installer les bibliothèques. (Ou peut-être inclure un installateur ou quelque chose.)
si l'application va être multiplate-forme je suggérerais WxWidgets
(wxpython
). Je l'ai utilisé plusieurs fois et il n'a jamais été un problème.
Néanmoins, vous devez créer des installateurs différents pour Windows, Mac et Linux. Sous Linux, utilisez .deb
ou .rpm
pour prendre soin de dépendances.
dans Windows, j'ai toujours utilisé py2exe
pour créer un exe
fichier. Py2exe
fonctionne en fixant l'interpréteur python et les bibliothèques nécessaires, dans ce cas wxWidgets
.
suivez ce lien pour plus d'informations: http://www.py2exe.org/