class Operate:
    def __init__(self):
        pass


class Add(Operate):

    def result(self):
        return (self.a+self.b)

class Subduct(Operate):

    def result(self):
        return self.a-self.b
        
class Multiply(Operate):

    def result(self):
        return self.a*self.b

class Divide(Operate):

    def result(self):
        return self.a/self.b

class Factory:                            #简单工厂,实现各个类实例化交互的过程

    def run(self):
        op = Operate                       #注意:a,b,operation都是运算父类Operate的 ‘类属性’ 这样其子类才能够直接调用,子类不能访问父类的实例属性
        op.a = int(input('plz input the first number:'))
        op.operation = input('plz input operation like(+,-,*,/):')
        op.b = int(input('plz input the second number:'))
        
        if(op.operation == '+'):
            print(Add().result())
        elif(op.operation == '-'):
            print(Subduct().result())
        elif(op.operation == '*'):
            print(Multiply().result())
        elif(operation == '/'):
            print(Divide().result())


Factory().run()

 

相关文章:

  • 2021-08-25
  • 2022-01-17
  • 2022-03-03
  • 2022-01-14
  • 2021-04-11
  • 2021-09-27
  • 2021-08-03
猜你喜欢
  • 2021-11-02
  • 2021-05-14
  • 2021-07-13
  • 2022-12-23
  • 2021-12-08
相关资源
相似解决方案