Python
文章平均质量分 56
和道一文字JC
这个作者很懒,什么都没留下…
展开
-
python中的闭包
我相信很多人对于闭包这个东西还是比较模糊的 解释如下: 闭包和嵌套是分不开的,我们从Python的运行原理来看: python的运行时环境中有一段空间时分配给运行时栈的,(这个栈的大小可以在运行时确定) 。运行时栈中存储的内容有:代码运行需要的栈大小,局部变量,嵌套作用域中使用的变量,外层作用域中变量名的集合,如下图所示, 闭包在维基百科中给出的定义是:一个包含了环境部分和原创 2013-07-23 22:45:48 · 891 阅读 · 0 评论 -
python的作用域规则
众所周知,python以前的作用域规则为LGB,后来改成了LEGB。 L: local, E: enclosure, G: global, B: builtin 我想L,G,B大家都知道是什么,这个E是python后来引入的一个新的作用域叫嵌套作用域。嵌套作用域和闭包是分不开的,关于闭包,我在另一篇博文中会进行说明 为了研究这种作用域规则对函数类等的影响,我将从python原创 2013-07-23 22:26:51 · 1248 阅读 · 0 评论 -
重现unladen-swallow的性能对比实验
unladen-swallow项目的失败实际上宣告了大幅度改变动态语言的性能是不可能的,个人觉得像python这样的动态语言改变他的性能的意义也不是特别大.没一种语言都有他实际的应用领域,其次随着计算机性能的越来越好,运行效率的问题不会显得太突出 我在编译unladen-swallow这个项目的时候,遇到一个很诡异的make错误: -g -O3 -I. -IInclude -I../原创 2013-07-23 22:48:54 · 1221 阅读 · 0 评论 -
Python中的装饰器
装饰器主要用途是包装另一个函数或者类。这种包装主要是为了透明地修改或者增强被包装对象的行为。装饰器的语法是特殊符号@——这是《Python参考手册》里面描述的。 装饰器其实就是一个函数,这个函数将另一个函数或者类作为参数,并返回经过处理的类或者函数。下面讨论一下装饰器的具体用法,即大家在实际想要使用装饰器的时候到底怎么写呢。 首先我想说的是当用装饰器函数去装饰一个函数的时候可以将装饰器原创 2013-07-23 22:53:07 · 1047 阅读 · 0 评论 -
Python的垃圾回收机制
1.1 Python的垃圾回收机制 很多文献没有对Python的垃圾回收进行非常详细的描述,这里将重点介绍一下Python的垃圾回收机制。Python采用自动和手动相结合的垃圾回收方法,其原理基于引用计数和分代垃圾回收以及标记-清除。 通常情况下,Python会使用引用计数的方式回收垃圾,即任何一个对象的引用计数为0的时候就立刻回收这个对象占有的内存。众所周知,引用计数的方法无法回收原创 2013-07-25 11:10:48 · 1406 阅读 · 0 评论