Re: [問題] 在輸入字串中做四則運算
※ 引述《cantakeyeofu (不看你的眼)》之銘言:
: 請教一下
: 若使用者在raw_input()中輸入類似這樣:
: 12+3
: 10-7
: 然後希望能印出15和3的四則運算結果
: 應該如何把 "12" "+" "3" 這三個字元拆開來做計算? 謝謝
簡單+-*/的話
str = '15+3-2/1'
re.split("[+-\/\*]", str)
['15', '3', '2', '1']
re.split("\d+", str)
['', '+', '-', '/', '']
# 前後兩個空就自己處理掉
之後如果要處理括弧的話可能還要再改一下
不知道這樣有沒有什麼其他問題@@
接著再做中序轉後序
最後用後序來算值
--
http://blog.carlcarl.tw
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.230.133
推
10/19 09:24, , 1F
10/19 09:24, 1F
→
10/19 09:25, , 2F
10/19 09:25, 2F
→
10/19 09:26, , 3F
10/19 09:26, 3F
→
10/19 09:26, , 4F
10/19 09:26, 4F
推
10/19 09:38, , 5F
10/19 09:38, 5F
→
10/19 09:40, , 6F
10/19 09:40, 6F
→
10/19 17:23, , 7F
10/19 17:23, 7F
→
10/19 17:25, , 8F
10/19 17:25, 8F
→
10/19 21:28, , 9F
10/19 21:28, 9F
討論串 (同標題文章)