先生が書いたpythonでのrpn電卓のプログラムなのですが、このプログラムをVSコードで実行するとappendとpop()に色が付かない、l.splitのlにエラーが発生します。
先生のVSコードではちゃんと表示されています。
lには計算したい数を入れるのではないかと考えましたが、appendとpop()は解決方法がわかりませんでした。
このプログラムで良いのかと直すならどこを直せば良いのかを教えていただきたいです。
python
1from inspect import stack 2 3 4def add(x, y): 5 return x+y 6 7 8def sub(x, y): 9 return x-y 10 11 12def mul(x, y): 13 return x*y 14 15 16def div(x, y): 17 return x/y 18 19 20ops = { 21 "+": add, 22 "=": sub, 23 "*": mul, 24 "/": div 25} 26 27lexp = l.split() 28for e in lexp: 29 try: 30 v = int(e) 31 stack.append(v) 32 except ValueError: 33 r = stack.pop() 34 l = stack.pop() 35 stack.append(ops[e](l, r)) 36print(stack.pop()) 37
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。