Python课程设计,设计一个简易计算器
在Python课程设计中,设计一个简易计算器,根据课本内容所写
import tkinter
import tkinter.messagebox
import reroot = tkinter.Tk()
root.geometry('300x270+400+100') # 设置窗口大小和位置
root.resizable(False,False) # 不允许改变窗口大小
root.title('计算器')# 放置用来显示信息的文本框,并设置为只读
contentVar = tkinter.StringVar(root,'')
contentEntry = tkinter.Entry(root, textvariable=contentVar, state='readonly')
contentEntry.place(x=10, y=10, width=280, height=20)# 按钮通用代码
def buttonClick(btn):content = contentVar.get()# 如果已有内容是以小数点开头的,前面加0if content.startswith('.'):content = '0' + content# 根据不同按钮做出相应的处理if btn in '0123456789':content += btnelif btn == '.':lastPast = re.split(r'\+|-|\*|/]',content)[-1]if '.' in lastPast:tkinter.messagebox.showerror('错误','小数点太多了')returnelse:content += btnelif btn == 'C':content = ''elif btn == '=':try:# 对输入的表达式求值content = str(eval(content))except:tkinter.messagebox.showerror('错误','表达式错误')returnelif btn in operators:if content.endswith(operators):tkinter.messagebox.showerror('错误','不允许存在连续的运算符')returncontent += btnelif btn =='Sqrt':n = content.split('.')if all(map(lambda x:x.isdigit(),n)):content = eval(content) ** 0.5else:tkinter.messagebox.showerror('错误','表达式错误')returncontentVar.set(content)
# 放置clear按钮和”=“按钮
btnClear = tkinter.Button(root, text='C', command=lambda:buttonClick('C'))
btnClear.place(x=40, y=40, width=80, height=20)
btnCompute = tkinter.Button(root, text='=', command=lambda:buttonClick('='))
btnCompute.place(x=170, y=40, width=80, height=20)# 放置10个数字,小数点,和计算平方根的按钮
digits = list('0123456789.') + ['Sqrt']
index = 0
for row in range(4):for col in range(3):d = digits[index]index += 1btnDigit = tkinter.Button(root, text=d, command=lambda x=d: buttonClick(x))btnDigit.place(x=20 + col * 70, y=80 + row * 50, width=50, height=20)# 放置运算符按钮
operators = ('+', '-', '*', '/', '**', '//')
for index, operator in enumerate(operators):btnOperator = tkinter.Button(root, text=operator, command=lambda x=operator: buttonClick(x))btnOperator.place(x=230, y=80 + index * 50, width=50, height=20)root.mainloop()
Python课程设计,设计一个简易计算器相关推荐
- C语言简单计算器考虑优先级,利用你现有的c语言知识 设计开发一个简易计算器,可进行加、减、乘、除、求余运算。...
满意答案 nxy_159 推荐于 2017.11.21 采纳率:52% 等级:9 已帮助:3561人 #include float numA = 0; float numB = 0; float ...
- c语言课程设计报告-计算器的实现,C语言课程设计--一个简易计算器的设计与实现.doc...
C语言课程设计--一个简易计算器的设计与实现 扬 州 大 学 ------------------1 程序设计内容:------------------1 课程设计所补充的内容:补充的函数或算法--- ...
- python中用于释放类占用的资源的方法是()_编写一个简易计算器,要求根据输入的数字和四则运算符号,计算运算结果并输出。_学小易找答案...
[简答题]20191220 课前作业 新工作页4.1的3-5-3页的填空题,参考教材P135-P144 [简答题]AutoCAD改编视图,尽量不用虚线 1. 主视图采用局部剖,表达右上角小圆筒(及孔) ...
- python的Tkinter库简单应用——开发一个简易计算器
利用python的Tkinter库开发一个简易计算器 文章目录 利用python的Tkinter库开发一个简易计算器 前言 一.实验准备 二.开发步骤步骤 1.引入库 2.界面设计 3.关键--实现T ...
- linux shell 计算器 除0,用shell写一个简易计算器,可以实现加、减、乘、除运算,假如脚本名字为1.sh,执行示例:./1....
用shell写一个简易计算器,可以实现加.减.乘.除运算,假如脚本名字为1.sh,执行示例:./1.sh 1 + 2#!/bin/bash if [ $# -ne 3 ] then echo &quo ...
- linux脚本计算器加减乘除,用shell写一个简易计算器,可以实现加、减、乘、除运算,假如脚本名字为1.sh,执行示例:./1....
用shell写一个简易计算器,可以实现加.减.乘.除运算,假如脚本名字为1.sh,执行示例:./1.sh 1 + 2#!/bin/bash if [ $# -ne 3 ] then echo &quo ...
- 如何使用 Java AWT 创建一个简易计算器
本文分享自华为云社区<手把手教你使用 Java AWT 创建一个简易计算器>,作者:海拥 . 关于AWT AWT (抽象窗口工具包)是一个有助于构建 GUI 的 API (图形用户界面)基 ...
- 前端 JavaScript 实现一个简易计算器
前端使用 JavaScript 实现一个简易计算器,没有难度,但是里面有些小知识还是需要注意的,算是一次基础知识回顾吧. 题目 实现一个简易版的计算器,需求如下: 1.除法操作时,如果被除数为0,则结 ...
- JSP 和 JavaBean 来实现一个简易计算器
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.代码 1.calculater.jsp 2.Calculater.java 总结 前言 使用 JSP 和 Java ...
最新文章
- 占失物,笔记本电脑电池
- xml语法规则(一)
- linux 内核 数据结构 file_operations、file、inode
- libevent java_libevent简介
- 未处理的异常:进程性能计数器已禁用
- Java语法教程-Java开发环境安装JDK
- ssl初一组周六模拟赛【2018.5.19】
- 光纤通信中的直接检测和相干检测系统
- ubuntu16.04安装使用redis入门教程
- 漫网漫画APP源码包含后台完整版
- html把字体设置为繁体,XP下怎样将繁体字设置成系统字体?XP下把系统字体改为繁体的方法...
- dota2地区服务器延迟,DOTA2 TI8预选赛:南美服务器爆炸比赛延迟
- cups ipp oracle,Linux打印系统CUPS原理分析
- 网页颜色搭配表及颜色搭配技巧
- 解除WORD文档保护
- centos怎么把计算机调到桌面,CentOS下命令行和桌面模式的切换方法
- 使用JAVA实现看吉日/黄道吉日/看日子功能的开发方法
- 什么是电商ERP,有什么作用
- 我肝了long long time 的笔记(别白嫖啊)
- (笔记)罗辑思维-学习的真相