我认为以下代码可能是您想要的:import math

test_input = ['2', '1', '=', 'not', '2', '3', 'power', '+']

def calculate(input):

newStack = []

for a in input:

print newStack

if a == '+':

op1, op2 = newStack.pop(), newStack.pop()

newStack.append(op2 + op1)

elif a == '-':

op1, op2 = newStack.pop(), newStack.pop()

newStack.append(op1 - op2)

elif a == '*':

op1, op2 = newStack.pop(), newStack.pop()

newStack.append(op2 * op1)

elif a == '/':

op1, op2 = newStack.pop(), newStack.pop()

newStack.append(op1 / op2)

elif a == '=':

op1, op2 = newStack.pop(), newStack.pop()

if op1 == op2:

newStack.append(1)

else:

newStack.append(0)

elif a == 'not':

op = newStack.pop()

if op > 0:

newStack.append(0)

else:

newStack.append(1)

elif a == 'power':

op1, op2 = newStack.pop(), newStack.pop()

newStack.append(math.pow(op1, op2))

else:

newStack.append(float(a))

return newStack.pop()

正如彼得在评论中指出的,你的后缀代码是错误的。我假设您想要的后缀代码可能是2 1 = not 2 3 power +。还要注意,结束值将是9+1 = 10,而不是{}。在

在python代码中,一个函数实际上应该足以将所有需要的东西推送到堆栈中。为了实现一个基本的实现,您可以简单地检查所有不同的操作符情况并执行任何需要的操作。如果提供的运算符中没有一个与当前元素匹配,则可以假定该元素是一个数值,并简单地推送解析后的浮点值。在

请注意,这是一个非常快速和肮脏的实现,但它可能会引导您走上正确的道路。在

python公式计算_Python数学公式计算相关推荐

  1. c python 内存冲突_Python在计算内存时应该注意的问题?

    我之前的一篇文章,带大家揭晓了 Python 在给内置对象分配内存时的 5 个奇怪而有趣的小秘密.文中使用了sys.getsizeof()来计算内存,但是用这个方法计算时,可能会出现意料不到的问题. ...

  2. python图片相似度计算_python Opencv计算图像相似度过程解析

    这篇文章主要介绍了python Opencv计算图像相似度过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.相关概念 一般我们人区分谁是谁 ...

  3. python公式计算_Python Numpy计算各类距离的方法

    详细: 1.闵可夫斯基距离(Minkowski Distance) 2.欧氏距离(Euclidean Distance) 3.曼哈顿距离(Manhattan Distance) 4.切比雪夫距离(Ch ...

  4. python星期计算_Python简单计算给定某一年的某一天是星期几示例

    本文实例讲述了Python简单计算给定某一年的某一天是星期几.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #计算某特定天使星期几 #蔡勒公式:w=y+[y/4]+[ ...

  5. python莱布尼茨法计算π_python圆周率计算(带进度条)

    3.波尔文四次迭代式 这个公式由乔纳森·波尔文和彼得·波尔文于1985年发表的. bailey-borwein-plouffe算法 这个公式简称BBP公式,由David Bailey, Peter B ...

  6. python波形分析库_Python科学计算——任意波形拟合

    任意波形的生成(geneartion of arbitrary waveform) 在商业,军事等领域都有着重要的应用,诸如空间光通信 (free-space optics communication ...

  7. python求均方根_Python科学计算

    任意波形的生成 (geneartion of arbitrary waveform) 在商业,军事等领域都有着重要的应用,诸如空间光通信 (free-space optics communicatio ...

  8. python多项式运算_python – 用于计算“多项式系数”的numpy / scipy函数

    是否有任何python函数(可能来自numpy或scipy)计算扩展中x ** r的系数(1 xx ** 2 x ** 3 - x **(k-1))** n ,其中k> = 1,n> = ...

  9. python 封闭图形面积_python实现计算图形面积

    用Python编写关于计算图形面积的代码实现,供大家参考,具体内容如下 #寒假打卡28天第7天 import math class Round(): #圆形 def __init__(self, R) ...

  10. python怎么计算_python怎么计算

    python计算主要使用Python的运算符.举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持非常多的运算符,在此 ...

最新文章

  1. Scikit-learn环境的搭建
  2. SameSite Cookie,防止 CSRF 攻击
  3. 使用ueditor小结
  4. 获取列表中的最大的N项和最小的N项
  5. Web通用令牌JwtBuilder
  6. HTML音乐标签和滚动
  7. django 表单html5,我们如何在django管理表单中添加动态html5数据属性
  8. MyBatis传入参数为0时条件不生效
  9. Thread 类的属性和方法
  10. ZJOI 2008 瞭望塔 三分法
  11. Pygame——创建游戏地图
  12. 08.音频系统:第004课_Android音频系统详解:第002节_以例子说明几个重要概念
  13. Kaggle泰坦尼克号提升准确率探索
  14. 米勒-拉宾素数检测法(判断一个极大的数是否为质数)——算法解析
  15. html图片右边加竖线,插入Html竖线代码
  16. 计算机音乐专业考研,武汉音乐学院2021年硕士研究生招生考试《计算机音乐作曲》考试大纲...
  17. NUC系列迷你电脑改装苹果网卡的又一神器方案
  18. 对比Excel,利用pandas进行数据分析各种用法
  19. 进制转换之二进制与十进制转换
  20. delphi的bpl、dcp 、dcu文件意义

热门文章

  1. Excel表格转换为Word表格,并且保留Excel表格中公式不发生变化
  2. elasticsearch 使用
  3. 如何打造自动驾驶的数据闭环?
  4. 基于改进注意力机制的U-Net模型实现及应用(keras框架实现)
  5. Java实现 LeetCode 299 猜数字游戏
  6. android 一种键盘不能调起的解决方法
  7. 使用MQTTlens和Mosquitto在WIN7上完成发布和订阅
  8. 【资料】wod旗帜,纹章
  9. 一些wincap函数说明
  10. 高考数学必考知识点数学高考常考考点