python界面开发案例:制作一个计算器软件
前言
大家早好、午好、晚好吖 ❤ ~欢迎光临本文章
在我们手机上大家都有一个计算器,对吧
那它这功能是怎么实现的呢?
今天我们在电脑上来实现一个电脑端计算器界面~
开发环境:
Python 3.8 / 编译器
Pycharm 2021.2版本 / 编辑器
本文所有模块\环境\源码\教程皆可点击文章下方名片获取此处跳转
代码展示
界面设置
1.导入模块
import tkinter as tk
2.实例化一个窗体对象
root = tk.Tk()
3.标题
root.title('计算器')
4.大小以及出现的位置
root.geometry("295x280+150+150")
5.透明度
root.attributes("-alpha", 0.9)
6.背景
root["background"] = "#ffffff"
7.标签
lable1 = tk.Label(root, textvariable=result_num, width=20, height=2, font=('宋体', 20), justify='left', background='#ffffff', anchor='se')
8.布局
lable1.grid(padx=4, pady=4, row=0, column=0, columnspan=4)
9.按钮
button_clear = tk.Button(root, text='C', width=5, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: clear())
button_back = tk.Button(root, text='←', width=5, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: back())
button_division = tk.Button(root, text='/', width=5, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: operator('/'))
button_multiplication = tk.Button(root, text='x', width=5, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: operator('*'))button_clear .grid(padx=4, row=1, column=0)
button_back .grid(padx=4, row=1, column=1)
button_division .grid(padx=4, row=1, column=2)
button_multiplication .grid(padx=4, row=1, column=3)button_seven = tk.Button(root, text='7', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('7'))
button_eight = tk.Button(root, text='8', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('8'))
button_nine = tk.Button(root, text='9', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('9'))
button_subtraction = tk.Button(root, text='—', width=5, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: operator('-'))
button_seven .grid(padx=4, row=2, column=0)
button_eight .grid(padx=4, row=2, column=1)
button_nine .grid(padx=4, row=2, column=2)
button_subtraction .grid(padx=4, row=2, column=3)button_four = tk.Button(root, text='4', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('4'))
button_four.grid(padx=4, pady=4, row=3, column=0)
button_five = tk.Button(root, text='5', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('5'))
button_five.grid(padx=4, row=3, column=1)
button_six = tk.Button(root, text='6', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('6'))
button_six.grid(padx=4, row=3, column=2)
button_addition = tk.Button(root, text='+', width=5, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: operator('+'))
button_addition.grid(padx=4, row=3, column=3)button_one = tk.Button(root, text='1', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('1'))
button_one.grid(padx=4, row=4, column=0)
button_two = tk.Button(root, text='2', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('2'))
button_two.grid(padx=4, row=4, column=1)
button_three = tk.Button(root, text='3', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('3'))
button_three.grid(padx=4, row=4, column=2)
button_equal = tk.Button(root, text='=', width=5, height=3, font=('宋体', 16), relief='flat', background='#C0C0C0', command=lambda: equal())
button_equal.grid(padx=4, row=4, rowspan=5, column=3)button_zero = tk.Button(root, text='0', width=12, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('0'))
button_zero.grid(padx=4, pady=4, row=5, column=0, columnspan=2)
button_decimal = tk.Button(root, text='.', width=5, font=('宋体', 16), relief='flat', background='#FFDEAD', command=lambda: append_num('.'))
button_decimal.grid(padx=4, row=5, column=2)
现在得出界面效果
功能
添加数字
def append_num(i):lists.append(i)result_num.set(''.join(lists))
选择运算符号
def operator(i):if len(lists) > 0:if lists[-1] in ['+', '-', '*', '/']:lists[-1] = ielse:lists.append(i)result_num.set(''.join(lists))
清零
def clear():lists.clear()result_num.set(0)
退格
def back():del lists[-1]result_num.set(lists)
等号
def equal():a = ''.join(lists)end_num = eval(a)result_num.set(end_num)lists.clear()lists.append(str(end_num))
定义一个列表收集输入的内容
lists = []
result_num = tk.StringVar()
result_num.set(0)
最后运行代码,效果如下图
先试试
运算得出结果
尾语
python界面开发案例:制作一个计算器软件相关推荐
- 使用python的tkinter模块制作一个计算器
使用tkinter模块制作的一个简单的计算器 由于刚学这个模块,所以做的不是很好 截图: 点击计算后算式区的值会改成结果,可自行在数字触发的函数中添加数字输入就进行计算回显的功能 代码如下: impo ...
- python制作解压工具_使用python制作一个解压缩软件
python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip install zipfile os是 ...
- python编写一个软件-使用python制作一个解压缩软件
python实现解压缩的重要模块就是――zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip install zipfile os是 ...
- python如何制作一个工程软件_使用python制作一个解压缩软件
python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip install zipfile os是 ...
- python如何制作一个工程软件_如何利用python制作一个解压缩软件-Go语言中文社区...
如何利用python制作一个解压缩软件 python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip ...
- 如何利用python制作一个解压缩软件
文章目录 如何利用python制作一个解压缩软件 安装zipfile模块 编写核心代码 安装tkinter模块 整合代码 安装pyinstaller模块 打包程序为可执行文件 打包程序为可执行文件 如 ...
- 【PYTHON】tkinter如何设置界面消失 当制作一个登陆界面时,登陆成功之后,如何让登陆界面本身消失...
tkinter如何设置界面消失 当制作一个登陆界面时,登陆成功之后,如何让登陆界面本身消失 tkinter如何设置界面消失 当制作一个登陆界面时,登陆成功之后,如何让登陆界面本身消失 1 if que ...
- python项目开发案例-Python项目开发案例集锦 PDF 全彩超清版
给大家带来的一篇关于Python案例相关的电子书资源,介绍了关于Python.项目开发.Python案例方面的内容,本书是由吉林大学出版社出版,格式为PDF,资源大小99.1 MB,明日科技编写,目前 ...
- 如何用matlab制作一个小软件
转:https://www.ttin.top/2018/03/29/TT0012/ 制作一个小软件的方法很多,比如说c++的MFC,本站在之前的第一个MFC文章里就提到过:matlab的GUIDE,在 ...
最新文章
- GridView中HyperLinkField的链接使用JavaScript问题
- MySQL中authorization_IdentitiServser4 + Mysql实现Authorization Server
- linux open()调用的注意事项
- 【转】上篇:陈皓谈程序员升级:职业规划就像软件工程
- 二进制、八进制、十六进制和十进制的相互转换,原码反码补码计算以及Java中数字的存储
- 上顿号符号_上顿号符号_标点符号(1):谈谈顿号的用法
- ABAP 引用类型介绍
- BUAA 436 孟竹的复习计划(二维树状数组)
- 5折交叉验证_交叉验证的方法主要分为哪些?
- 2010.2.28 OA 项目组工作报告
- 如何选择一个合适的大数据可视化工具
- Struts2架构流程
- GetLastError错误码大全
- [雷霄骅]修改了一个YUV/RGB播放器
- windows虚拟化服务器搭建,windows虚拟化服务器搭建
- 深度学习中训练迭代次数理解【源码阅读技巧分享】【深度学习循环迭代理解】【for X, y in train_iter:】
- 照片去雾怎么操作?学会这招就不用担心雾化了
- 灿烂夏日里的翩翩蝴蝶结
- Apache Echarts常用图表之柱状图
- 项目人生:成长与感悟
热门文章
- 图书销售管理需求分析引言部分
- typora使用手册 一
- 测开:前端基础-html
- STM8S003F3P6: Failed to get execution status: SWIM error [30004]: Comm timeout
- PDF文件数字签名和加密服务解决方案
- 如何用纯 CSS 创作一个晃动的公告板
- Verilog移位运算符
- 全民直播时代,视频云带来了哪些价值?
- 如何用计算机做字库,用自己的字体做电脑字库很简单,只需要耐心写完8890个汉字...
- miui10 android 唤醒,小米再次推送MIUI10最新版,修复小爱同学唤醒功能,没理由不升级...
使用tkinter模块制作的一个简单的计算器 由于刚学这个模块,所以做的不是很好 截图: 点击计算后算式区的值会改成结果,可自行在数字触发的函数中添加数字输入就进行计算回显的功能 代码如下: impo ...
python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip install zipfile os是 ...
python实现解压缩的重要模块就是――zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip install zipfile os是 ...
python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip install zipfile os是 ...
如何利用python制作一个解压缩软件 python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip ...
文章目录 如何利用python制作一个解压缩软件 安装zipfile模块 编写核心代码 安装tkinter模块 整合代码 安装pyinstaller模块 打包程序为可执行文件 打包程序为可执行文件 如 ...
tkinter如何设置界面消失 当制作一个登陆界面时,登陆成功之后,如何让登陆界面本身消失 tkinter如何设置界面消失 当制作一个登陆界面时,登陆成功之后,如何让登陆界面本身消失 1 if que ...
给大家带来的一篇关于Python案例相关的电子书资源,介绍了关于Python.项目开发.Python案例方面的内容,本书是由吉林大学出版社出版,格式为PDF,资源大小99.1 MB,明日科技编写,目前 ...
转:https://www.ttin.top/2018/03/29/TT0012/ 制作一个小软件的方法很多,比如说c++的MFC,本站在之前的第一个MFC文章里就提到过:matlab的GUIDE,在 ...