Калькулятор с Tk и py2app на mac - PullRequest
0 голосов
/ 05 мая 2020

Я обычный месяц в Python.

Я сделал калькулятор с помощью tkinter в Spyder 4.0.1,

Я получал ошибки. Они заставляли мой код выдавать желтый (!) Калькулятор функционировал на Ma c. Переключив «from tkinter import *» на «from tkinter import Tk, Label, Button»; Я получил сообщение об ошибке: «tkinter.label импортирован, но не используется». Я не совсем понимаю, что это значит. Я использовал видеоурок, я не совсем понимаю некоторые строки, такие как operator = "" или "text_input = stringVar ()", или проблемы с label.tk в строке 23 С эстетической точки зрения есть небольшая проблема. Когда я запускаю его ... bg = "синий порошок" для кнопок с цифрами не работает. Я также пытаюсь узнать, как превратить .py в .app. Я загрузил py2app и сделал setup.py в Терминале для этого - выполнив py2applet --make-setup EmersonCal.py, и он сделал: написал setup.py, затем я сделал все это: python setup.py py2app -A. .. rm - rf build dist Я получил спам с предупреждениями ... "ImportError в рецепте sip проигнорировал имя модуля (...)", когда я пытаюсь запустить его после py2app, это вызывает фатальную проблему ... "установить framework на основе python, отредактируйте расположение pyruntime info.plist) Нужен ли мне pyqt для этого?

Я пытаюсь учиться на лету и с классом Coursera, ценю любую помощь

Вот некоторые из приведенных ниже кодов.

from tkinter import Tk, Label, Button

def btnClick(numbers) :
    global operator
    operator=operator +str(numbers)
    text_Input.set(operator)

def btnClearDisplay():
    global operator
    operator=""
    text_Input.set("")

def btnEqualsInput():
    global operator
    sumup=str(eval(operator))
    text_Input.set(sumup)
    operator=""


cal = Tk()
cal.title ("Emerson's Calculator")
operator = ""
text_Input =StringVar()

txtDisplay = Entry (cal, font=('arial', 20, 'bold'), textvariable=text_Input, bd=30, insertwidth=4,bg="powder blue", justify='right') .grid(columnspan=4)

btn7=Button (cal,padx=16, pady=16, bd=8, fg="black", font=('arial', 20,'bold') ,
text="7", command=lambda:btnClick (7),bg="powder blue") .grid(row=1, column=0)
...