zoukankan      html  css  js  c++  java
  • python函数之第一类对象

    目录

    python函数之第一类对象

    第一类对象(英语:First-class object)在计算机科学中指可以在执行期创造并作为参数传递给其他函数或存入一个变数的实体。将一个实体变为第一类对象的过程叫做“物件化”(Reification)。

    1、函数名字是对函数的引用。python中所有的东西都是对象,所以函数名字是函数对象的引用

    >>> def foo():
    	print('in foo')
    
    	
    >>> foo
    <function foo at 0x00000201F328AD90>
    

    2、函数作为第一类变量可以赋值给其他变量

    >>> def foo():
    	print('in foo')
    
    	
    >>> foo
    <function foo at 0x00000201F328AD90>
    >>> f = foo
    >>> foo()
    in foo
    >>> f()
    in foo
    >>> id(f), id(foo)
    (2207397752208, 2207397752208)
    >>> f
    <function foo at 0x00000201F328AD90>
    

    3、函数作为第一类对象,可以作为参数传递

    >>> def foo():
    	a = 10
    	return a
    
    >>> print(foo())
    10
    

    4、函数作为第一对象,可以作为函数的返回值。

    >>> def foo():
    	def inner():
    		print('我是函数的返回值')
    	return inner  # 函数名可以返回
    
    >>> ret = foo()
    >>> ret()  # 在函数外面访问了函数内部的函数
    我是函数的返回值
    

    5、函数名还可以作为容器类的元素

    >>> def foo1():
    	print('我是函数一')
    
    	
    >>> def foo2():
    	print('我是函数二')
    
    	
    >>> def foo3():
    	print('我是函数三')
    
    	
    >>> def foo4():
    	print('我是函数四')
    
    	
    >>> list_foo = [foo1, foo2, foo3, foo4]
    >>> for i in list_foo:
    	i()
    
    	
    我是函数一
    我是函数二
    我是函数三
    我是函数四
    
  • 相关阅读:
    Flask 入门
    Android studio 混淆打包
    Android----获取包名和sh1
    windows下 安装 rabbitMQ 及操作常用命令
    Nginx
    Linux安装mongoDB步骤和方法
    史上最简单的 SpringCloud 教程 | 终章
    idea 项目热部署设置
    JDK源码阅读顺序
    Linux常用命令
  • 原文地址:https://www.cnblogs.com/lcfzh/p/10099071.html
Copyright © 2011-2022 走看看