首页 > 其他 > 详细

markdown 计算器

时间:2018-08-16 18:22:54      阅读:195      评论:0      收藏:0      [点我收藏+]

计算器

分四种运算(加减乘除)、括号、去除最后括号、验证等式是否计算完成
bracket = re.compile(r‘\([^()]+\)‘) # 找括号
multiplys = re.compile(r‘(\d+\.?\d*\*-\d+\.?\d*)|(\d+\.?\d*\*\d+\.?\d*)‘)   # 找乘法
divides = re.compile(r‘(\d+\.?\d*/-\d+\.?\d*)|(\d+\.?\d*/\d+\.?\d*)‘)   # 找除法
adds = re.compile(r‘(-?\d+\.?\d*\+-\d+\.?\d*)|(-?\d+\.?\d*\+\d+\.?\d*)‘)    # 找加法
subtracts = re.compile(r‘(-?\d+\.?\d*--\d+\.?\d*)|(-?\d+\.?\d*-\d+\.?\d*)‘) # 找减法
out_cal = re.compile(r‘\(?\+?-?\d+\)?‘) # 验证等式是否计算完成
out_strip = re.compile(r‘[^(].*[^)]‘)   # 去除最后括号
计算顺序:

去空格 --> 替换(--)为(+) --> 除法--> 乘法 --> 减法 --> 加法

beginning = ‘‘.join([i for i in re.split(‘\s+‘, beginning)])  # 去除等式中的空格
beginning = beginning.replace(‘--‘, ‘+‘)    # 去除特殊字符

代码来源

markdown 计算器

原文:https://www.cnblogs.com/ipyanthony/p/9488846.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!