Pertama, Anda akan memerlukan beberapa pustaka GUI dengan binding Python dan kemudian (jika Anda mau) beberapa program yang akan mengubah skrip python Anda menjadi executable mandiri.
Pustaka GUI lintas platform dengan binding Python (Windows, Linux, Mac)
Tentu saja, ada banyak, tetapi yang paling populer yang pernah saya lihat di alam liar adalah:
- Tkinter - berdasarkan pada Tk GUI toolkit (pustaka GUI standar de-facto untuk python, gratis untuk proyek komersial)
- WxPython - berdasarkan pada WxWidgets (populer, gratis untuk proyek komersial)
- Qt menggunakan binding PyQt atau Qt untuk Python . Yang pertama tidak gratis untuk proyek komersial. Yang terakhir kurang matang, tetapi dapat digunakan secara gratis.
Daftar lengkapnya ada di http://wiki.python.org/moin/GuiProgramming
Dapat dieksekusi tunggal (semua platform)
- PyInstaller - yang paling aktif (Bisa juga digunakan dengan
PyQt
)
- fbs - jika Anda memilih Qt di atas
Eksekusi tunggal (Windows)
- py2exe - digunakan untuk menjadi yang paling populer
Eksekusi tunggal (Linux)
- Freeze - bekerja dengan cara yang sama seperti py2exe tetapi menargetkan platform Linux
Eksekusi tunggal (Mac)
- py2app - lagi-lagi, berfungsi seperti py2exe tetapi menargetkan Mac OS
Sistem lain (belum disebutkan dalam jawaban yang diterima) adalah PyInstaller, yang bekerja untuk proyek PyQt milik saya ketika py2exe tidak mau. Saya merasa lebih mudah digunakan.
http://www.pyinstaller.org/
Pyinstaller didasarkan pada Pemasang Python Gordon McMillan. Yang tidak lagi tersedia.
sumber
Alat alternatif untuk py2exe adalah bbfreeze yang menghasilkan file executable untuk windows dan linux. Ini lebih baru dari py2exe dan menangani telur dengan cukup baik. Saya telah menemukannya secara ajaib bekerja lebih baik tanpa konfigurasi untuk berbagai aplikasi.
sumber
Ada juga PyGTK , yang pada dasarnya adalah pembungkus Python untuk Gnome Toolkit. Saya merasa lebih mudah untuk membungkus pikiran saya daripada Tkinter, datang dari cukup banyak tidak memiliki pengetahuan tentang pemrograman GUI sebelumnya. Ini bekerja dengan cukup baik dan memiliki beberapa tutorial yang bagus. Sayangnya belum ada pemasang untuk Python 2.6 untuk Windows, dan mungkin tidak untuk sementara waktu.
sumber
Karena python diinstal pada hampir setiap OS non-Windows secara default sekarang, satu-satunya hal yang benar-benar perlu Anda pastikan adalah bahwa semua pustaka non-standar yang Anda gunakan diinstal.
Karena itu, adalah mungkin untuk membangun executable yang menyertakan interpreter python, dan perpustakaan apa pun yang Anda gunakan. Ini kemungkinan akan membuat executable besar.
MacOS X bahkan menyertakan dukungan dalam Xcode IDE untuk membuat aplikasi GUI mandiri lengkap. Ini dapat dijalankan oleh pengguna yang menjalankan OS X.
sumber
Untuk GUI itu sendiri:
PyQT cukup banyak referensi.
Cara lain untuk mengembangkan antarmuka pengguna yang cepat adalah dengan menulis aplikasi web, menjalankannya secara lokal dan menampilkan aplikasi di browser.
Plus, jika Anda memilih opsi Tkinter yang disarankan oleh lubos hasko, Anda mungkin ingin mencoba portablepy agar aplikasi Anda berjalan di lingkungan Windows tanpa Python.
sumber
Saya tidak yakin bahwa ini adalah cara terbaik untuk melakukannya, tetapi ketika saya menggunakan aplikasi Ruby GUI (bukan Python, tetapi memiliki "masalah" yang sama sejauh menyangkut masalah .exe di Windows), saya hanya menulis peluncur pendek dalam C # yang memanggil skrip utama saya. Ini mengkompilasi ke executable, dan saya kemudian memiliki aplikasi executable.
sumber
py2exe
Maka Anda harus menggunakan py2exe, misalnya, untuk membawa satu folder semua file yang diperlukan untuk menjalankan aplikasi, bahkan jika pengguna tidak memiliki python pada pc-nya (saya berbicara tentang windows ... untuk os apple tidak perlu file yang dapat dieksekusi, saya pikir, karena datang dengan python di dalamnya tanpa perlu menginstalnya.
Buat file ini
1) Buat setup.py
dengan kode ini:
simpan di folder
2) Letakkan program Anda di folder setup.py yang sama taruh di folder ini program yang ingin Anda buat distribuitable: es: l4h.py
ps: ubah nama file (dari l4h menjadi apapun yang Anda inginkan, itu adalah contoh)
3) Jalankan cmd dari folder itu (pada folder, klik kanan + shift dan pilih mulai cmd di sini)
4) tulis dalam cmd:> python setup.py py2exe
5) di folder dist ada semua file yang Anda butuhkan
6) Anda dapat zip dan mendistribusikannya
Pyinstaller
Instal dari cmd
**
**
Jalankan dari cmd dari folder tempat file tersebut berada
**
**
sumber
PySimpleGUI membungkus tkinter dan bekerja pada Python 3 dan 2.7. Ini juga berjalan pada Qt, WxPython dan di browser web, menggunakan kode sumber yang sama untuk semua platform.
Anda dapat membuat GUI khusus yang memanfaatkan semua widget yang sama dengan yang Anda temukan di tkinter (slider, kotak centang, tombol radio, ...). Kode cenderung sangat ringkas dan mudah dibaca.
Seperti yang dijelaskan dalam Dokumentasi PySimpleGUI , untuk membangun file .EXE yang Anda jalankan:
sumber
Anda tidak perlu mengkompilasi python untuk Mac / Windows / Linux. Ini adalah bahasa yang ditafsirkan, jadi Anda hanya perlu memiliki interpreter Python diinstal pada sistem pilihan Anda (tersedia untuk ketiga platform).
Adapun perpustakaan GUI yang bekerja lintas platform, perpustakaan widget Tk / Tcl Python bekerja dengan sangat baik, dan saya percaya cukup lintas platform.
Tkinter adalah antarmuka python ke Tk / Tcl
Dari halaman web proyek python:
sumber
Anda dapat menggunakan
appJar
untuk pengembangan GUI dasar.Lihat dokumentasi di situs appJar .
Instalasi dibuat dengan
pip install appjar
dari baris perintah.sumber
Saya kagum melihat tidak ada yang menyebut Kivy !!!
Saya pernah melakukan proyek menggunakan Tkinter, meskipun mereka menganjurkan bahwa itu telah meningkat banyak, itu masih memberi saya nuansa windows 98, jadi saya beralih ke Kivy .
Saya telah mengikuti serangkaian tutorial jika ini membantu ...
Hanya untuk memberikan gambaran tentang bagaimana penampilan kivy, lihat ini (Proyek yang sedang saya kerjakan):
Dan saya telah mengerjakannya selama hampir seminggu sekarang! Manfaat untuk Kivy yang Anda minta? Memeriksa ini
Alasan mengapa saya memilih ini adalah, tampilannya dan dapat digunakan di ponsel juga.
sumber