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

相关文章

Flask 让jsonify返回的json串支持中文显示的方法

Flask 让jsonify返回的json串支持中文显示的方法

用flask时遇到了返回字符串支持中文显示的问题,在web端显示的是utf-8的编码,而不是中文,如下图。 虽然不影响接口的读取,但是可读性太差,于是研究了一下怎么直接显示成中文。最后...

Hadoop中的Python框架的使用指南

Hadoop中的Python框架的使用指南

 最近,我加入了Cloudera,在这之前,我在计算生物学/基因组学上已经工作了差不多10年。我的分析工作主要是利用Python语言和它很棒的科学计算栈来进行的。但Apache...

深入理解Python 关于supper 的 用法和原理

一、前言 Python 面向对象中有继承这个概念,初学时感觉很牛逼,里面也有个super类,经常见到,最近做一些题才算是理解了。特地记录分享给后来研究的小伙伴,毕竟现在小学生都开始学了(...

Python中规范定义命名空间的一些建议

API的设计是一个艺术活。往往需要其简单、易懂、整洁、不累赘。 很多时候,我们在底层封装一个方法给高层用,而其它的方法只是为了辅助这个方法的。 也就是说我们只需要暴露这个方法就行,不用关...

python 实现视频流下载保存MP4的方法

如下所示: # -*- coding:utf-8 -*- import sys import os from glob import glob import requests...