python 简易计算器
小tip :首先在敲代码前,我们要整理思路,先构思出一个框架,不要盲目开始,这样你会无从下手
思路:
- 计算器中,要对数字运算 “加减乘除”,所以首先要拿到数字和运算符
- 拿到数据之后要判断是否为数字(若不是数字,要有具体应对措施)
- 接下来就是进行运算和输出结果
input_data = input("请输入:")
op_list = ["+", "-", "*", "/"]
for op in op_list:if op in input_data:result_tuple = input_data.partition(op)
if result_tuple[0].isdigit() and result_tuple[2].isdigit():num1 = int(result_tuple[0])num2 = int(result_tuple[2])if result_tuple[1] == "+":print(result_tuple[0], "+", result_tuple[2], "=", num1 + num2)elif result_tuple[1] == "-":print(result_tuple[0], "-", result_tuple[2], "=", num1 - num2)elif result_tuple[1] == "*":print(result_tuple[0], "*", result_tuple[2], "=", num1 * num2)elif result_tuple[1] == "/":print(result_tuple[0], "/", result_tuple[2], "=", num1 / num2)
举例:运算 7 - 8:
我们要考虑到程序的优化问题
可能遇到的问题:
- 用户输入的不是数字;
- 除数为 0 ;
优化:
- 可以控制程序的开始或结束
优化后的程序:
while True:flag = 1input_data = input("请输入:")if input_data == "exit":print("正在退出.....")breakresult_tuple = ()op_list = ["+", "-", "*", "/"]for op in op_list:if op in input_data:result_tuple = input_data.partition(op)if result_tuple: # 判断拿到的数据是否为我们想要的if result_tuple[0].isdigit() and result_tuple[2].isdigit(): # 判断拿到的是否为数字num1 = int(result_tuple[0])num2 = int(result_tuple[2])if result_tuple[1] == "+":print(result_tuple[0], "+", result_tuple[2], "=", num1 + num2)elif result_tuple[1] == "-":print(result_tuple[0], "-", result_tuple[2], "=", num1 - num2)elif result_tuple[1] == "*":print(result_tuple[0], "*", result_tuple[2], "=", num1 * num2)elif result_tuple[1] == "/":if num2 == 0:flag = 0 # 对除数不能为 0 的异常进行操作else:print(result_tuple[0], "/", result_tuple[2], "=", num1 / num2)else:flag = 0else:flag = 0 if flag == 0:print("输入有误,请重新输入!!!")
python 简易计算器相关推荐
- python简易计算器报告_用 Python 实现简易计算器 ( 下 )
上一篇讲了 用 Python 实现一个计算器的前期准备,从新建项目到 PyQt5安装.配置和使用,最后完成了一个比较丑的计算器界面布局. 本篇文章开始详细讲解后续实现计算器功能的讲解. 主要涉及的知识 ...
- Python简易计算器
# 开发一个简单的计算器程序 # 实现对加减乘除.括号优先级的解析,并实现正确运算 def cal(num1, num2, op):result = 0.0if op == '+':result = ...
- python简易计算器报告_python 简易计算器
源代码: from tkinter import * #输入框纯数字验证 def test(content): return content.isdigit() #加法按钮函数 def add(): ...
- [python]简易计算器
主程序 #!/usr/bin/python #coding:utf8 import add,multipy,minus,divisi if __name__=='__main__': prin ...
- python 简易计算器(只能计算加减乘除和括号)
import re# 格式化字符串函数(消除一些错误的格式) def format_string(string):# 一系列的替换语句string = string.replace("--& ...
- python简易计算器教程_python 实现简易计算器
import re from functools import reduce def mul_div(exp): # 计算两个数的乘法或者除法 if '*' in exp: a, b = exp.sp ...
- 如何在python制作计算器_Python简易计算器制作方法代码详解
主要用到的工具是Python中的Tkinter库 比较简单 直接上图形界面和代码 引用Tkinter库 from tkinter import * 建立主窗口对象 window=Tk() #设置窗口对 ...
- 怎么用python自制计算公式_手把手教你用python制作简易计算器,能够记录你使用的情况...
话不多说,首先先看效果图,它能够记录你在使用过程中的历史,方便你查看是否有错: 接下来就仔细分析一下是如何制作的: 简易计算器 第一步:导入资源库 在过程中使用到了tkinter这个资源库,win+R ...
- python表达式计算器_Python正则表达式实现简易计算器功能示例
本文实例讲述了Python正则表达式实现简易计算器功能.分享给大家供大家参考,具体如下: 需求:使用正则表达式完成一个简易计算器. 功能:能够计算简单的表达式. 如:1*2*((1+2)/(2+3)+ ...
- Python之实现一个简易计算器
自己动手写计算器 一.功能分析 用户输入一个类似这样 3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4) 这样的表达式,假设表达式里 ...
最新文章
- 试题 入门训练 Fibonacci数列(Java)
- LeetCode-剑指 Offer 25. 合并两个排序的链表
- 程序员发现 Bug 的时候是怎样一种心境?
- 学 Python找不到练手项目?试试这些!
- Angulary应用依赖里的platform-browser
- 基线检查工具_最新版CAD燕秀工具箱2.87(支持20042021)
- 日志钩子(JournalRecord Hook)的使用
- STL中empty()函数的误用
- 动态规划入门——第N个泰波那契数(Leetcode 1137)
- The netfilter.org project
- android屏幕适配教程,Android屏幕适配方案,android屏幕适配
- BZOJ3437:小P的牧场(斜率优化DP)
- JavaScript = TypeScript 入门
- Study 3 —— Python运算符
- 程序员常用的软件(附下载地址)
- 证件照处理软件(IDPhoto Processor)免费版 v3.2.10
- 从普通物理到弦论教材推荐
- numpy部份函数或命令用法(不定时更新)
- Mob免费验证码androidStudio实现
- Kaop打印项之表格
热门文章
- 人工神经网络MATLAB例子,matlab人工神经网络模型
- 锐起无盘服务器优化,(锐起无盘系统制作系统优化教程.doc
- 锐捷客户端linux安装,锐捷smp客户端安装(linux)
- 无法创建java虚拟机_java虚拟机创建失败的原因整理
- VS2015安装提示“安装包丢失或损坏”
- android高效视频压缩代码,Android视频压缩的示例代码
- Cognos常见错误解决办法
- 学生成绩管理系统简单c语言源代码,c语言学生成绩管理系统源代码
- Git教程(一)Git简介——廖雪峰的官方网站
- 《CSS权威指南》.pdf