Python - десктопное приложение с графическим интерфейсом
Python имеет встроенный пакет GUI, который позволяет легко создавать такие формы:
В этом примере используется пакет tkinter. Форма выше принимает значение, введенное в поле ввода, возводит его в квадрат и отображает обратно в поле ввода, таким образом, квадратную кнопку можно нажать снова. Довольно стандартное приложение.
Интересная часть этой статьи - сделать приложение автономным и отправить его кому-то, у кого не установлен python и не нужно работать с консолью. Это 3 маленьких шага, необходимых для написания кода:
- Сохраните код Python как *.pyw
- Установите «pip install pyinstaller»
- Создайте исполняемый файл с помощью «pyinstaller -w InputOutputConsole.pyw»
Когда вы выполните эти шаги, результат будет сохранен в той же папке:
В папке dist находится EXE-файл, который может запустить небольшое приложение. Код приложения здесь:
from tkinter import * class Application(Frame): def __init__(self, master=None): Frame.__init__(self, master) self.grid() self.create_widgets() def create_widgets(self): self.display_label = Label(self, text="Enter value to square:") self.display_label.grid(row=0, column=0) self.input_field = Entry(self, bd = 5) self.input_field.grid(row=0,column=1) self.result_label = Label(self, text="Result will be here:") self.result_label.grid(row=1, column=0) self.calculation_button = Button(self, text="Square!", command=self.calculation) self.calculation_button.grid(row=3,column=3) self.quit_button = Button(self, text="Quit", command=self.master.destroy) self.quit_button.grid(row=4,column=10) def calculation(self): new_val = int(self.input_field.get())**2 self.result_label['text'] = new_val self.input_field.delete('0', 'end') self.input_field.insert('0', str(new_val)) if __name__ == "__main__": app = Application() app.mainloop()
Это небольшой пример того как можно реализовать десктопное приложение с помощью Python
Сделать сборку под OSX можно при помощи утилиты dmgbuild