根据传入的不同参数 使用不同的方法
1
Trim21 2019-08-03 13:07:14 +08:00 via Android
functools.singledispatch
|
2
troywinter 2019-08-03 20:59:36 +08:00
#1 正解,曾经我在面试 python 时第一道题就是让他们写个 singledispatch 出来。。。
|
3
shanguo 2019-08-04 00:57:17 +08:00
# python3
from enum import IntEnum class Animal(object): @staticmethod def cat(): print('cat') @staticmethod def dog(): print('dog') # 比如参数是数字 1,2 # 可以使用枚举 class StatusEnum(IntEnum): 1 = cat 2 = dog # 使用 def main(animal_num): func = getattr(Animal, StatusEnum(animal_num).name) func() main(1) |