如何使用eval()白色的TextInput?

时间:2019-07-02 23:20:22

标签: python kivy kivy-language

我的Python kivy程序中有几个TextInputs。我想要一个函数来对输入进行乘法,除法或加法运算,并将结果显示在另一个标签中。但是,例如,如果输入为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"))

1 个答案:

答案 0 :(得分:0)

  • 使用TextInput函数将int()文本/字符串转换为整数
  • 使用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'))

输出

Result: 40 + 60 = 100