python中的函数原理

这篇博客深入探讨了Python函数的工作原理,包括函数作为可执行逻辑、函数对象与全局命名空间的关系、装饰器的应用、变量查找顺序以及参数传递方式。强调了在函数内部不能直接修改全局变量,函数总是有返回值,即使没有明确的`return`语句,也会返回`None`。
摘要由CSDN通过智能技术生成

1.函数是一个可执行语句(逻辑语句,不是物理语句)

2.函数执行是通过绑定函数名和当前本地命名空间的一个函数对象(由可执行代码围绕的一个包装器)

3.该函数对象中包含一个对全局命名空间的一个引用,当该函数被调用时,该引用作为全局命名空间来使用

4.一个函数定义可能被一个或多个装饰器包裹,函数定义完成,其装饰表达式在包含该函数的范围内被评估,结果必须是可调用的,该调用以函数对象作为唯一调用参数

5.调用返回值和函数名绑定,而不是函数对象

6.多个装饰器在嵌套中应用


------------------------------------------------------------------------------------------


1.函数执行为该函数本地变量引入一个新的符号表,更准确的说,函数中所有变量的赋值都是将值存储在本地符号表
2.当引用该变量时,首先在本地(被调函数)符号表中查找,然后在上一层函数的本地符号表中查找,然后在全局符号表中查找,最后在python内置名称表中查找
    1.因此在函数内部,无法直接给全局变量直接赋值(第1条),但是可以引用该全局变量(第2条)


1.当一个函数被调用时,实参会被引入该函

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值