zoukankan      html  css  js  c++  java
  • 单分发器

    import functools
    
    class SnareDrum(object): pass
    class Cymbal(object): pass
    class Stick(object): pass
    class Brushes(object): pass
    
    @functools.singledispatch
    def play(instrument, accessory):
        raise NotImplementedError("Cannot play these")
    
    @play.register(SnareDrum)
    def _(instrument, accessory):
        if isinstance(accessory, Stick):
            return "POC!"
        if isinstance(accessory, Brushes):
            return "SHHHH!"
        raise NotImplementedError("Cannot play these")
    
    play(SnareDrum(), Stick()) # "POC!"
    play(SnareDrum(), Brushes()) # "SHHHH!"
  • 相关阅读:
    HTML5新增标签和属性
    HTML——表单标签
    HTML——表格标签
    js
    js
    js
    js
    js-02-2
    js
    selleck --手机端-- 销售打卡记录下载
  • 原文地址:https://www.cnblogs.com/jzm17173/p/6625064.html
Copyright © 2011-2022 走看看