大家好,本文将介绍在Python中使用Tkinter几分钟内制作自己的全功能GUI计算器。
要完成所提到的功能,除了通常随Python标准库一起安装的Tkinter之外,不需要任何额外的库。
如果使用的是Linux系统,可能需要安装:
$ pip install python-tk
1.eval()
解决数学问题
eval()
是Python中的一个内置函数,它会解析表达式参数并将其作为Python表达式进行求值,下面使用eval()
的概念来解决数学表达式。
>>> while True:
... expression = input('Enter equation: ')
... result = eval(expression)
... print(result)
...
Enter equation: 2 + (9/9) *3
5.0
Enter equation: 12 /9 + (18 -2) % 5
2.333333333333333
使用这4行代码,已经在Python中制作了一个命令行计算器,现在使用相同的概念来制作一个带有图形界面的计算器。
这个GUI计算器有三个主要部分:
-
用于显示表达式的屏幕(框架)
-
保存表达式值的按钮
-
搭建计算器逻辑
2.为计算器制作框架
from tkinter import Tk, Entry, Button, StringVar
class Calculator:
def __init__(self, master):
master.title('Simple Calculator')
master.geometry('360x260+0+0')
master.config(bg='#438')
master.resizable(False, False)
root = Tk()
calculator = Calculator(root)
root.mainloop()
输出:
3.添加一个屏幕显示表达式
from tkinter import Tk, Entry, Button, StringVar
class Calculator:
def __init__(self, master):
master.title('Simple Calculator')
master.geometry('360x260+0+0')
master.config(bg='#438')
master.resizable(False, False)
self.equation = StringVar()
self.entry_value = ''
Entry(width =&nbs