python-方法重载

根据参数类型,执行 装饰器指定类型的方法

from functools import singledispatch


@singledispatch
def func(arg):
    print(arg, ', 主函数')


@func.register(int)
def _(arg: int):
    print(arg, ', int')


@func.register(list)
def _(arg: list):
    print(arg, ', list')


if __name__ == '__main__':
    func('abc')
    func(1)
    func([1, 2, 3])


posted @ 2021-10-18 18:34  做个笔记  阅读(138)  评论(0编辑  收藏  举报