首页 / PYTHON / Python计算不带括号的字符串
Python计算不带括号的字符串
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python计算不带括号的字符串,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1694字,纯文字阅读大概需要3分钟。
内容图文
__author__ = ‘Alex‘# -*- coding:UTF-8 -*-import re import string str = "-10+30-20*11+40*21/5-100+70-2*13+14" data_list=[] sym_list=[] data_list = re.findall(‘\d+‘,str) sym_list = re.findall(‘\D+‘,str) # print (data_list) # print (sym_list)def add (a1,a2,opr): if opr == ‘+‘: flag = False return a1+a2 def sub (a1,a2,opr): if opr == ‘-‘: flag = False return a1-a2 def mul(a1,a2,opr): if opr == ‘*‘: flag = True return a1*a2 def div(a1,a2,opr): if opr == ‘/‘: flag = True return a1/a2 if sym_list[0] == ‘-‘: data_list[0] = ‘-%s‘%(data_list[0]) sym_list.remove(sym_list[0]) print (data_list) print (sym_list) while sym_list.count(‘*‘) != 0 or sym_list.count(‘/‘) != 0: for i in range(len(sym_list)): if sym_list[i] == ‘*‘: val = mul(float(data_list[i]),float(data_list[i+1]),‘*‘) data_list.remove(data_list[i]) data_list.remove(data_list[i]) data_list.insert(i,val) sym_list.remove(sym_list[i]) breakif sym_list[i] == ‘/‘: val = div(float(data_list[i]),float(data_list[i+1]),‘/‘) data_list.remove(data_list[i]) data_list.remove(data_list[i]) data_list.insert(i,val) sym_list.remove(sym_list[i]) breakprint (data_list) print (sym_list) while len(sym_list)>0: for i in range(len(sym_list)): if sym_list[i] == ‘+‘: val = add(float(data_list[i]),float(data_list[i+1]),‘+‘) data_list.remove(data_list[i]) data_list.remove(data_list[i]) data_list.insert(i,val) sym_list.remove(sym_list[i]) breakif sym_list[i] == ‘-‘: val = sub(float(data_list[i]),float(data_list[i+1]),‘-‘) data_list.remove(data_list[i]) data_list.remove(data_list[i]) data_list.insert(i,val) sym_list.remove(sym_list[i]) breakprint (data_list) print (sym_list)
原文:http://www.cnblogs.com/python-study/p/5491361.html
内容总结
以上是互联网集市为您收集整理的Python计算不带括号的字符串全部内容,希望文章能够帮你解决Python计算不带括号的字符串所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。