Kivy:如何将用户输入转换为 int 或 float

Kivy: How to convert user input into int or float

在 Kivy 中使用 TextInput 时,输入的所有内容都保留为字符串,即使输入仅限于使用 floats 或 ints 的字符 input_filterTextInput.text 如何转换为实际的 float 或 int 类型以便我可以用它进行计算?

为什么不能直接获取 TextInput.text 并使用 floatint 进行转换?即 text = TextInput.text 对于一个整数.. conversion = int(text)

尝试cast

str_float = '123.456'
flt_val = float(str_float)

对于int

int_val = int(str_int)

如果字符串是无效整数,则抛出ValueError异常。 所以,

try:
    int_val = int(str_int) # or flt_val = float(str_float)
except ValueError:
    # Handle exception.

在 Kivy 中,TextInput 默认为 unicode。所以你将不得不做很多转换。 主要回到浮点数和字符串。

entry = float(entry)
entry = str(entry)