闭包的另一种形式

def gen_rand_data(tensor_arg):
    rand_func = {
                 "randint":__gen_rand_randint   #某处定义的函数
                 }

    func = rand_func[tensor_arg]  #通过描述传入函数
    return func(tensor_arg)  #返回函数

def __gen_rand_randint(arg):
    return arg


print(gen_rand_data("randint"))
print(type(gen_rand_data("randint")))

return func(tensor_arg) 实际返回的是"实例化"之后的返回值string类型的"randint"
posted @ 2019-01-06 16:20  clemente  阅读(132)  评论(0编辑  收藏  举报