python-函数中变量名的搜过过程

函数中的变量名如何去解释,解释为局部变量?全局?还是什么。。。


The execution of a function introduces a new symbol table used for the local variables of the function. More precisely, all variable assignments in a function store the value in the local symbol table; whereas variable references first look in the local symbol table, then in the local symbol tables of enclosing functions, then in the global symbol table, and finally in the table of built-in names. Thus, global variables cannot be directly assigned a value within a function (unless named in a global statement), although they may be referenced.

总结:

函数执行时,对其中的引用(变量名)进行解释时:
1. 运行函数时,首先为函数创建局部变量表;
2. 解释时,查看此函数的局部变量表是否有此变量,若没有;
3. 再查看 全局变量表, 若没有;
4. 再查看 包含有函数名字的局部变量表,若没有;
5. 再查看 内置名称表
注意: global可以打破2,3的界限

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值