如何获取eval语句以将数字作为浮点数运行

use*_*980 4 python floating-point user-interface wxpython eval

我创建了一个GUI计算器(包括一个屏幕截图),当按下一个按钮时,它会向textctrl添加文本,以便向用户显示公式.当用户按下输入时,它接受该文本并运行它使用eval然后使用SetValue打印,但如果我在texctrl中运行问题,如5/6它出现为0我如何使它成为一个浮点数

def eenter(self,e):
    a=self.box.GetValue()
    answer=eval(a)
    ans=str(answer)
    self.box.SetValue(ans)
Run Code Online (Sandbox Code Playgroud)

Gre*_*ill 5

放在文件顶部:

from __future__ import division
Run Code Online (Sandbox Code Playgroud)

这重新定义了/它的意义所以它总是浮点除法.(整数除以//.)

有关这意味着什么的更多信息,请参阅PEP 238.