多语言展示
当前在线:339今日阅读:91今日分享:37

python里简单理解闭包的作用

python里有一个闭包的概念,这里简单理解一下闭包的作用
工具/原料
1

python3.6

2

pycharm

方法/步骤
1

闭包又叫词法闭包或函数闭包。比较高深的样子简单说就是函数的嵌套--函数里面嵌套另一个函数。目的:为了利用以前写好的函数,给它穿一个马甲,瓤没变,加个壳子包装一下(个人浅薄的理解)。

2

例子1:#pingjia是以前写好的函数,需要加个马甲 流浪地球或疯狂的外星人#cinema实际就是pingjiadef majia(n):    if (n==1):        print('流浪地球', end='')  #end=''表示不换行    else:        print('疯狂的外星人', end='')    def pingjia(m):  #闭包 函数里嵌套的函数就是闭包        if (m == 1):            print(' 好电影')        else:            print(' 一般电影')    return pingjia  #返回值不带参数print('大年初一看电影:')cinema = majia(1)  #cinema 实际就是pingjiacinema(1)  #对应闭包也要参数!

3

例子2:#pingjia是以前写好的函数,需要加个马甲 流浪地球或疯狂的外星人#cinema实际就是pingjiadef majia(n):    if (n==1):        print('流浪地球', end='')  #end=''表示不换行    else:        print('疯狂的外星人', end='')    def pingjia(m):  #闭包 函数里嵌套的函数就是闭包        if (m == 1):            print(' 好电影')        else:            print(' 一般电影')    return pingjia  #返回值不带参数print('大年初一看电影:')cinema = majia(0)  #cinema 实际就是pingjiacinema(0)  #对应也要参数!

注意事项
1

通过闭包的方式,保持程序的健壮性,降低代码复杂度

2

函数的嵌套,并不是递归!

推荐信息