在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
闭包如何使用?能解决什么问题?闭包可以保存外部函数内的变量,且不会随着外部函数调用完而销毁。闭包可以提高代码的可重用性,不需要手动定义额外的功能函数,我们学习闭包需要掌握了解闭包的作用。
学习目标:能够知道闭包的作用
1. 案例
需求: 根据配置信息使用闭包实现不同人的对话信息,例如对话:
张三: 到北京了吗? 李四: 已经到了,放心吧。
2. 实现步骤说明
(1)定义外部函数接收不同的配置信息参数,参数是人名
(2)定义内部函数接收对话信息参数
(3)在内部函数里面把配置信息和对话信息进行拼接输出
3. 功能代码的实现
# 外部函数
def config_name(name):
# 内部函数
def say_info(info):
print(name + ": " + info)
return say_info
tom = config_name("Tom")
tom("hello!")
tom("你好, 在家吗?")
jerry = config_name("jerry")
jerry("今天不在家改天约!")
运行结果:
Tom: hello!
Tom: 你好, 在家吗?
jerry: 今天不在家改天约!
闭包案例说明:闭包还可以提高代码的可重用性,不需要再手动定义额外的功能函数。
5. 小结
闭包不仅可以保存外部函数的变量还可以提高代码的可重用行。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
python主要用来做什么?Python开发简单吗?
Python技术可做web开发、Python技术可做数据分析、Python技术可做人工智能、将Python用于机器学习,流行的Python机器学习库和框架,其中最流行的两个是scikit-learn和TensorFlow。
10902
2019-06-11 15:19:29
Python知识点详解:UDP和TCP协议的介绍
UDP和TCP都是传输层协议,不过却又一些不同。TVP提供IP环境下的数据可靠传输,它是实现为所发送的数据凯皮出连接的通道,然后再进行数据的发送。而UDP并不为IP提供可靠性,流控或差错回复功能。UDP和TCP到底如何定义?应用场景是如何的呢?下面小编就详细为大家解析一下。
10683
2019-07-11 17:18:53
学人工智能一定要先学Python吗?为什么?
学人工智能一定要学Python吗?不一定,如果大家会C/C++也可以不学Python,但是使用Python的脚本语言更加简单,所以为什么不使用更加轻松的编程语言呢?而且Python也是科学计算和数据分析的重要工具,学人工智能先学Python,也可以方便初学者。博学谷为此专门开设了Python+人工智能在线就业班课程,有兴趣学习人工智能的同学可以了解一下该课程。
8977
2019-08-21 14:41:48
零基础自学Python要多久才能学会?
零基础自学Python要多久?学习Python开发的周期因人而异,由于基础、学习效率不同有的人学习进度快,需要6个月到一年不等,有的人自律性较差可能需要更久的时间才能学会,今天小编分享下6个月学习周期内的自学Python的学习路线。
8817
2020-03-20 15:09:01
学Python编程能做什么工作?从事什么岗位?
随着人工智能发展,学习python语言的人员有更多的岗位机会,python从事的职业广泛,从游戏到AI人工智能能都可以用Python实现。除了编程,各种岗位的人都应该学python编程,python编程会大大的提高工作效率。
8152
2020-12-15 13:59:06
