python3之简单工厂模式的介绍
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python3之简单工厂模式的介绍,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1935字,纯文字阅读大概需要3分钟。
内容图文
![python3之简单工厂模式的介绍](/upload/InfoBanner/zyjiaocheng/430/311366e5b54e4c7182b436acdb65ef43.jpg)
在Python3环境下,调试实现了《大话设计模式》中简单工厂模式,通过定义单独的工厂类,完成对具体的产品的实例化,参考链接
具体实现见代码:
#!/usr/bin/env python # -*- coding: utf-8 -*- # Date : 2017-10-15 21:46:28 # Author : John # Version : V1.001 # Func : class Operator(object): """docstring for Operator""" def __init__(self, NumberA=0, NumberB=0): super(Operator, self).__init__() self.NumberA = NumberA self.NumberB = NumberB def GetResult(self): pass class AddOp(Operator): """docstring for AddOp""" def GetResult(self): return int(float(self.NumberA) + float(self.NumberB)) class MinusOp(Operator): """docstring for MinusOp""" def GetResult(self): return int(float(self.NumberA) - float(self.NumberB)) class MultiOp(Operator): """docstring for MultiOp""" def GetResult(self): return int(float(self.NumberA) * float(self.NumberB)) class pideOp(Operator): """docstring for pideOp""" def GetResult(self): try: return float(float(self.NumberA) / float(self.NumberB) * 1.0) except ZeropisionError as e: print("pideOp error, {0}".format(e)) class OperatorFactory(object): """docstring for OperatorFactory""" def ChooseOperator(self, op): if op == '+': return AddOp() if op == '-': return MinusOp() if op == '*': return MultiOp() if op == '/': return pideOp() if __name__ == '__main__': ch = '' while not ch == 'q': NumberA = input('Please input NumberA: ') op = input('Please input operator: ') NumberB = input('Please input NumberB: ') factory = OperatorFactory() opType = factory.ChooseOperator(op) opType.NumberA = NumberA opType.NumberB = NumberB print('The result is: {0}'.format(opType.GetResult())) print('\n#-- input q to exit any key to continue') try: ch = str(input()) except Exception as e: print('Get input error: {0}'.format(e)) print('Use default value to ch') ch = ''
以上就是python3之简单工厂模式的介绍的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的python3之简单工厂模式的介绍全部内容,希望文章能够帮你解决python3之简单工厂模式的介绍所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。