zoukankan      html  css  js  c++  java
  • 函数名及第一类对象

    1.查看函数的内存地址
    def func():
        print(1)
    print(func)  #<function func at 0x0000000000681E18>(函数的内存地址)
    2.函数名当做值赋给变量
    def func():
        print(1)
    a = func          #将func当做值赋值给变量a
    print(func())
    print(a)
    结果:
    1
    None
    <function func at 0x00000000004F1E18>
    3.函数名可以当做参数去传递给函数
    def func():
        print(1)
        return "努力学习python" #返回给func()
    def func2(msg):        #努力学习python == msg
        print(msg)
    func2(func())         #将return返回值 返回给func(),然后又将func()当作参数传递给func2()中的msg
    # 结果:
    1
    努力学习python
    4.函数名可以当作返回值被返回
    def foo():
        print(2)        # 当函数没有写return默认返回None
    def func(msg):
        print(1)
        return msg()    ###msg指的是foo的内存地址  msg()指的调用函数    # 容易犯的错误
    print(func(foo))        # 函数名可以当做返回值被返回
    结果:
    1
    2
    None
    5.函数名可以当做元素存放在一个容器中
    def foo():
        print(1)
        return "猪蹄"
    def func():
        print(2)
        ret = foo()
        return ret
    def func1():
        print(3)
        msg = func()    #函数名可以当做元素存放在一个容器中
        return msg
    print(func1())   #接力  (接力:第二个函数的return返回值是第一个函数的函数名)
    总结:
    1.函数名可以直接查找内存地址
    2.函数名可以当做值赋值给变量
    3.函数名可以作为参数进行传递给函数
    4.函数名当做返回值,返回值加括号 接力的时候要一层一层往下传
    5.函数名可以当做元素存放到一个容器中





  • 相关阅读:
    JDK API文档下载
    idea技巧:查看一个类的所有子类以及子类的子类并以层级关系显示
    Vue项目优化
    deepin 安装netcore 记录
    UOS 下的VScode 使用经验
    UOS操作系统磁盘空间不够一例
    SRPBatcher优化的原理
    我的UOS生活
    假如美国禁用了Unity3D和Unreal怎么办
    BGFX学习笔记01
  • 原文地址:https://www.cnblogs.com/shicongcong0910/p/10260228.html
Copyright © 2011-2022 走看看