python编程嵌套函数实例代码

yipeiwu_com6年前Python基础

python,函数嵌套,到底是个什么东东?

很少有人用,但是,有时确实会用:

def multiplier(factor): 
  def multiplyByFactor(number): 
     return number*factor 
  return multiplyByFactor

python程序,一个函数在另外一个函数的里面,外层的函数返回的是里层函数。也就是函数本身被返回了,返回的是函数(听起来和C语言的一些东东相似)。

注意,返回的函数还可以访问它的定义所在的作用域,也就是它带着它的环境信息奥。

看看下面的用法,就会有被水浇的感觉了:

>>>double = multiplier(2) 
>>>double(5) 
10 
 
>>>triple=multiplier(3) 
>>>triple(3) 
9 
 
>>>multiplier(5)(4) 
>>>20 

每次调用外层函数,它内部的函数都会被重新绑定,factor变量每次都有一个新的值。

以上内容摘抄自《python基础教程》

总结

以上就是本文关于python编程嵌套函数实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Django自定义用户表+自定义admin后台中的字段实例

Django自定义用户表+自定义admin后台中的字段实例

1.自定义用户表 注意事项 必须在settings中配置AUTH_USER_MODEL这个字段 # 覆盖默认的用户模型,使用自定义用户模型 # 语 法:'app的名称.自定义...

python进阶教程之函数对象(函数也是对象)

秉承着一切皆对象的理念,我们再次回头来看函数(function)。函数也是一个对象,具有属性(可以使用dir()查询)。作为对象,它还可以赋值给其它对象名,或者作为参数传递。 lambd...

python Django连接MySQL数据库做增删改查

1、下载安装MySQLdb类库http://www.djangoproject.com/r/python-mysql/2、修改settings.py 配置数据属性复制代码 代码如下:DA...

TensorFlow实现随机训练和批量训练的方法

TensorFlow实现随机训练和批量训练的方法

TensorFlow更新模型变量。它能一次操作一个数据点,也可以一次操作大量数据。一个训练例子上的操作可能导致比较“古怪”的学习过程,但使用大批量的训练会造成计算成本昂贵。到底选用哪种训...

Python异常处理操作实例详解

本文实例讲述了Python异常处理操作。分享给大家供大家参考,具体如下: 一、异常处理的引入 >>>whileTrue: try: x = int(input("P...