题目解题思路classSolution:defevalRPN(self,tokens:List[str])-int:stack[]fortokenintokens:try:stack.append(int(token))except:num2stack.pop()num1stack.pop()stack.append(self.evluate(num1,num2,token))returnstack[0]defevluate(self,num1,num2,op):ifop:returnnum1num2elifop-:returnnum1-num2elifop*:returnnum1*num2elifop/:returnint(num1/float(num2))#如果是非法运算符将内容转换为数字.pop()方法的作用按顺序理解图解图解1图解2图解3设定栈(栈[ ])并且入栈图解4遇到号弹出两个栈图解5计算后得到12将12重新压入栈中(理解为上子弹和退子弹的过程)图解6循环往复即可