python的LEGB原则
2016-01-12 20:49
567 查看
python中也存在闭包的概念,但是python的闭包不好的问题在于,默认是只读的,好在python3.0的版本支持了关键字nonlocal。看如下例子
def outer():
var = 0
def inner():
var += 1
yield var
return inner
这种写法会出现域错误的提示,是因为var+=1而 引起的,如果不是赋值,只是访问的话是没有问题的。
def outer():
var = 0
def inner():
var += 1
yield var
return inner
这种写法会出现域错误的提示,是因为var+=1而 引起的,如果不是赋值,只是访问的话是没有问题的。
相关文章推荐
- python exception
- [Leetcode]5.Longest Palindromic Substring @ Python
- [Leetcode]4. Median of Two Sorted Arrays @python
- 笨办法学Python学习笔记 练习19
- Python 字符串
- 笨办法学Python学习笔记 练习18
- [Leetcode]3. Longest Substring Without Repeating Characters @python
- 深入思考python的super()
- ubuntu14下python3.4安装PIL的步骤
- python数字图像处理(10):图像简单滤波
- 关于ImportError: xxxx.so: undefined symbol: PyFPE_jbuf的解决方案
- python搭建虚拟环境
- python库tqdm(进度条工具库)
- python使用@property
- python-->>基础入门
- Python 2.5.8 map/reduce
- python 装饰器模式 我的理解
- python 装饰器模式 我的理解
- 笨办法学Python学习笔记 练习17
- [Leetcode]@python 68. Text Justification