怎么用python tkinter实现简单计算器功能
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要讲解了"怎么用python tkinter实现简单计算器功能",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用python tkinte
千家信息网最后更新 2026年10月31日怎么用python tkinter实现简单计算器功能
这篇文章主要讲解了"怎么用python tkinter实现简单计算器功能",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用python tkinter实现简单计算器功能"吧!
效果图
直接上代码
import tkinter as tkinput_num_ls = []first_num = Nonecalculator_method = Nonedef get_num(ls): new_ls = [10 ** i * float(num) for i, num in enumerate(ls)] ls_sum = sum(new_ls) if int(ls_sum) == ls_sum: return int(ls_sum) else: return ls_sumdef append_num(num): global input_num_ls if len(num) < 10: input_num_ls.append(num) else: input_num_ls.append(num[:10]) current_value.set(get_num(input_num_ls)) print(input_num_ls)def append_calculator(method): global input_num_ls, first_num, calculator_method calculator_method = method first_num = get_num(input_num_ls) input_num_ls = [] print('method', calculator_method)def calculator_result(): global first_num, input_num_ls, calculator_method second_num = get_num(input_num_ls) input_num_ls.clear() if calculator_method == '+': current_value.set(second_num + first_num) input_num_ls.append(str(second_num + first_num)) elif calculator_method == '-': current_value.set(first_num - second_num) input_num_ls.append(str(first_num - second_num)) elif calculator_method == '*': current_value.set(first_num * second_num) input_num_ls.append(str(second_num * first_num)) elif calculator_method == '/': current_value.set(first_num / second_num) input_num_ls.append(str(first_num / second_num)) print(first_num, second_num, calculator_method)def clear(): global first_num, input_num_ls, calculator_method first_num = None input_num_ls = [] calculator_method = None current_value.set(0)def func(): pass# 主体窗口window = tk.Tk()# 设置窗口 标题window.title('简易计算器')# 设置窗口 宽高window.geometry('400x300')# 添加user显示屏幕背景screen_area = tk.Frame(width='400', height='100', bg='#ddd')# 放置到window中screen_area.pack()# 示例设置显示的数据类current_value = tk.StringVar()current_value.set(0)# 数字显示框# anchor 文本相对于标签中心的位置 默认是center N S W Eshow_screen_label = tk.Label(screen_area, textvariable=current_value, bg='white', width='400', height='2', font={'黑体', 40, 'bold'}, anchor='e')show_screen_label.pack(padx=10, pady=6)# 按键区域button_area = tk.Frame(width='300', height='300', bg='#ccc')button_area.pack(padx=10, pady=5)# 添加buttontk.Button(button_area, text='C', width='5', height='1', command=lambda: clear()).grid(row='1', column='0')tk.Button(button_area, text='+', width='5', height='1', command=lambda: append_calculator('+')).grid(row='1', column='1')tk.Button(button_area, text='-', width='5', height='1', command=lambda: append_calculator('-')).grid(row='1', column='2')tk.Button(button_area, text='*', width='5', height='1', command=lambda: append_calculator('*')).grid(row='1', column='3')tk.Button(button_area, text='7', width='5', height='1', command=lambda: append_num('7')).grid(row='2', column='0')tk.Button(button_area, text='8', width='5', height='1', command=lambda: append_num('8')).grid(row='2', column='1')tk.Button(button_area, text='9', width='5', height='1', command=lambda: append_num('9')).grid(row='2', column='2')tk.Button(button_area, text='/', width='5', height='1', command=lambda: append_calculator('/')).grid(row='2', column='3')tk.Button(button_area, text='4', width='5', height='1', command=lambda: append_num('4')).grid(row='3', column='0')tk.Button(button_area, text='5', width='5', height='1', command=lambda: append_num('5')).grid(row='3', column='1')tk.Button(button_area, text='6', width='5', height='1', command=lambda: append_num('6')).grid(row='3', column='2')tk.Button(button_area, text='=', width='5', height='1', command=lambda: calculator_result()).grid(row='3', column='3')tk.Button(button_area, text='1', width='5', height='1', command=lambda: append_num('1')).grid(row='4', column='0')tk.Button(button_area, text='2', width='5', height='1', command=lambda: append_num('2')).grid(row='4', column='1')tk.Button(button_area, text='3', width='5', height='1', command=lambda: append_num('3')).grid(row='4', column='2')tk.Button(button_area, text='C', width='5', height='1', command=lambda: clear()).grid(row='4', column='3')window.mainloop()感谢各位的阅读,以上就是"怎么用python tkinter实现简单计算器功能"的内容了,经过本文的学习后,相信大家对怎么用python tkinter实现简单计算器功能这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
计算器
功能
学习
内容
主体
代码
位置
区域
就是
屏幕
思路
情况
按键
效果
效果图
数字
数字显示
数据
文章
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳市人人互联网科技有限公司
安徽鑫晟辉互联网科技
互联网金融科技创新
科技互联网公司logo
唐信互联网科技 大连
狮子座互联网科技培训
互联网金融监管科技
太原新华互联网科技学校怎么样
华夏互联网科技业
苏州铭阳互联网科技有限公司
科技类公司包括互联网吗
锡山区互联网智能科技产品供应
上海钢联属于互联网科技股吗
有人说阿里系是互联网科技企业
科技互联网行业投资研究
三亚科技创新互联网基地
恒生科技指数 中概互联网
网互联网络科技
山东亿川互联网科技有限责任公司
武汉亿视互联网科技有限公司
深圳齐家互联网科技
互联网前沿科技
科技大学互联网专业好不好
中国最先进互联网科技公司
互联网和高科技公司
成都玖崟互联网科技有限公司乐商圈怎么样
现代科技和互联网有关系吗
阿里巴巴算科技企业还是互联网
元气玛特互联网科技公司是外包吗
中天科技中国工业互联网