变量作用域(Variable Scope)
来源:互联网 发布:linux dhcp 作用 编辑:程序博客网 时间:2024/05/22 04:56
global关键字
在局部作用域中使用全局变量,需要使用global关键字。
>>> a= 10>>> def test(): global a a += 1 print a>>> test()11>>> a11
作用域数量
python支持多个作用域。程序最多有n层函数嵌套,就有n+1个作用域。
比如下面程序就有3个作用域:全局作用域
,foo()局部作用域
,bar()局部作用域
:
>>> def foo(): m = 3 def bar(): n = 4 print m + n print m bar()>>> foo()37
bar()局部作用域
可以引用它外部的其它两个作用域:全局作用域
,foo()局部作用域
的变量。反之却不能。
python2.1之前是只支持两个作用域的,也就是说当时这段程序会报错,提示:局部变量m未定义
。
Scope and lambda
现在,lambda表达式可以引用其外部作用域中的变量。(Python2.1之前不可以)
>>> x = 10>>> def foo(): y = 5 bar = lambda :x+y print bar()>>> foo()15
0 0
- 变量作用域(Variable Scope)
- JavaScript变量作用域和变量提升解释(JavaScript Variable Scope and Hoisting Explained)
- JavaScript变量作用域和变量提升解释(JavaScript Variable Scope and Hoisting Explained)
- Reduce Scope of Variable -- 缩小变量作用域
- [python]Python中变量的作用域(variable scope)
- 变量(Variable)的作用域(Scope)与生命周期(Extent)
- [从jQuery看JavaScript]-变量与作用域链(Variable and Scope Chain)
- [从jQuery看JavaScript]-变量与作用域链(Variable and Scope Chain)
- java变量作用域Scope
- java变量作用域Scope
- PHP 全局变量(Global Scope Variable) vs 局部变量(Local Scope Variable)
- 作用域(scope)
- jstl变量作用域控制 scope
- 之变量作用域(Scope in PHP)
- js变量提升,scope作用域
- AngularJS的scope变量的作用域
- javascript variable's scope , 变量 范围
- angularjs scope(作用域)
- 内核态与用户态详解!!!!!
- 详解Android中AsyncTask的使用
- 实验任务4 Activity的生命周期测试
- BUG:libpng error: Not a PNG file
- Android使用selector文件点击文字变色
- 变量作用域(Variable Scope)
- TCP-IP协议
- DB9 公头母头引脚定义及连接
- C#的第20课内容
- 自然语言处理中CNN模型几种常见的Max Pooling操作
- failed to push some refs to 'git@github.com怎么办
- SQL Server里建表保存后要修改遇到无法保存修改的问题
- 排序算法题
- Oracle10g自定义聚合函数(字符串拼接)