我已經創建了一個GUI計算器(包括一個屏幕截圖),當按下按鈕時,它將文本添加到文本控件中,以便將公式顯示給用戶。當用戶按下輸入需要的文本,並運行它usesing EVAL然後使用的SetValue打印,但如果我在texctrl運行問題像5/6它出來爲0如何使的浮標我如何得到一個eval語句來運行浮點數
def eenter(self,e):
a=self.box.GetValue()
answer=eval(a)
ans=str(answer)
self.box.SetValue(ans)
小心那個'eval' ... – wim 2012-01-04 04:20:33
爲什麼在這種情況下他應該小心'eval'?這是一個桌面程序。任何能夠輸入'__import __(「shutil」)。rmtree(「/」)'的人都可以使用opena命令提示符並在那裏輸入同樣具有破壞性的命令。除非他正在爲一個自助服務終端編寫應用程序,但似乎不太可能。 – jsbueno 2012-01-04 10:23:19