python输出计算结果_python 实现计算器功能 输入字符串,输出相应结果

这篇博客介绍了如何使用Python实现一个简单的计算器功能。通过正则表达式处理输入的数学公式,逐步计算加减乘除,以及处理括号内的运算,最终得出计算结果。
摘要由CSDN通过智能技术生成

1 import re

2 formul='2*(1+2*6/3-2)+5+2*(1+6/2/3-2)'

3

4 def addjian(func):

5 digital = re.split('(\d)',func)

6 for index in range(1,len(digital),2):

7 if digital[index] == '+':

8 digital[index + 1] = str(int(digital[index - 1]) + int(digital[index + 1]))

9 elif digital[index] == '-':

10 digital[index + 1] = str(int(digital[index - 1]) - int(digital[index + 1]))

11

12 return digital[-1]

13 def chengchu(func):

14 ret = re.findall('\d+[^+-]+\d',func)

15 for i in ret:

16 digital = re.split('(\d)',i) #加个括号是为了优先级的原因,保留非数字

17 for index in range(1,len(digital),2):##这个地方的思想很巧妙,假设[1,/,2,*,3,/,4,*,5],

18 # 我会把1/2的结果替换到2的身上位0.5,然后,0.5*3的结果替换到3的身上&

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值