1
2
1
1
2
3
4
Python没有严格意义上的常量,它只有变量。因此,要在 Python 中使用常量,告诉其他程序员这是一个常量,必须对常量的标识符名称进行约定,避免当做变量进行赋值。Python 社区决定使用“大写字母写名称,并用下划线分隔单词”的命名约定来区分变量和常量。
Python中没有常量,其实只是变量,因此命名规则和变量一样,唯一的区别是常量仅使用大写字母。PI=3.14,WIDTH=20
引用计数就是:变量值被变量名关联的次数
标记-清除: 当我们的内存空间即将要沾满的时候,这个时候会暂停所有程序的执行,开始扫描内存空间中得数据,把垃圾数据进行打标签,然后统一进行垃圾数据的清除.
分代回收:根据存活时间来为变量划分不同等级(也就是不同的代)
新定义的变量,放到新生代这个等级中,假设每隔1分钟扫描新生代一次,如果发现变量依然被引用,那么该对象的权重(权重本质就是个整数)加一,当变量的权重大于某个设定得值(假设为3),会将它移动到更高一级的青春代,青春代的gc扫描的频率低于新生代(扫描时间间隔更长),假设5分钟扫描青春代一次,这样每次gc需要扫描的变量的总个数就变少了,节省了扫描的总时间,接下来,青春代中的对象,也会以同样的方式被移动到老年代中。也就是等级(代)越高,被垃圾回收机制扫描的频率越低
回收:
-
!
手机扫一扫
移动阅读更方便
你可能感兴趣的文章