+/- 在 python kivy gui 计算器中不起作用

时间:2021-03-13 17:18:36

标签: python user-interface kivy calculator

我想出了如何在 python 中使用 kivy 制作计算器的所有方法,但我无法找到为什么我的加号到减号转换器确实有效,但正因为如此,我无法拒绝在没有符号的情况下输入一个又一个符号在中间输入任意数字

例如:

def equals(self):
    global answer, int_answer
    try :
        prior = self.ids.top_bar.text
        if u"\u00D7" in prior:
            num_list = prior.split(u"\u00D7")
            x = "*"
            num_list2 = x.join(num_list)
            answer = eval(num_list2)
            self.ids.top_bar.text = str(answer)
        elif u"\u00F7" in prior:
            num_list = prior.split(u"\u00F7")
            x = "/"
            num_list2 = x.join(num_list)
            answer = eval(num_list2)
            for num in num_list:
                if num.isdigit():
                    int_answer = int(answer)
                    self.ids.top_bar.text = str(int_answer)
                elif not num.isdigit():
                    float_answer = float(answer)
                    self.ids.top_bar.text = str(float_answer)
        else:
            answer = eval(prior)
            self.ids.top_bar.text = str(answer)
    except ValueError:
        print("error")
    except ZeroDivisionError:
        self.ids.top_bar.text = "Can't divide by zero"
        if self.ids.top_bar.text == "Can't divide by zero":
            self.ids.top_bar.font_size = 30
    except SyntaxError:
        print("error")

0 个答案:

没有答案
相关问题