如何使用 eval() 和 kivy TextInput?

How to use eval() whit kivy TextInput?

我的 Python kivy 程序中有几个 TextInput。我想要一个函数来乘法、除法或相加输入并在不同的标签中显示结果。但是如果输入例如是 40 和 60,则标签只显示 4060 而不是 100。

我做错了什么?

def numbers_submit(self):
    ti = self.ids.one_input.text
    fi = self.ids.two_input.text
    ei = self.ids.three_input.text

    fl = self.ids.result_label 

    fl.text = eval("ti + fi")

我也试过:

   fl.text = eval(str("ti + fi"))
  • 使用 int() 函数将 TextInput text/string 转换为整数
  • 使用 str() 函数将结果从整数转换为字符串

片段

def numbers_submit(self):
    ti = int(self.ids.one_input.text)
    fi = int(self.ids.two_input.text)
    ei = self.ids.three_input.text

    fl = self.ids.result_label

    fl.text = str(eval('ti + fi'))

输出