zoukankan      html  css  js  c++  java
  • python变量内存管理

    python变量内存管理

    变量存哪了

    变量存放在内存中,每定义一个变量就会在电脑的内存中开辟一个小空间,小空间存放变量值,然后内存给这个小空间一个变量名,变量名指向变量值.

    引用计数

    x=10  #定义变量
    y=x   #10的引用计数加1
    del y  #释放的是引用计数,10的引用计数为1
    del x  #引用计数为0
    

    当引用计数为0时,触发垃圾回收机制,释放内存占用

    垃圾回收机制

    ​ 定义x=10,内存开辟一个内存空间存储变量值10.如果再加上一串代码x=11,内存会开辟另一个内存空间存储变量11,把变量值绑定另一个变量名x,由于之前有x,所以内存会解除x与10的连接让x与11连接.此时10没有了变量名x所以成为了python眼中的垃圾,python会处理掉这个垃圾并释放10的内存占用.

    小整数池

    ​ 为避免重复创建相同的值而重复申请内存空间带来的效率问题,python解释器会在启动时创建小整数池,范围是[-5,256],该范围内小整数对象永远不会被垃圾回收机制回收.pycharm中做了优化,间隔时间短的无论多大id都一样.

  • 相关阅读:
    Code Reading chap2
    Code Reading chap4
    Code Reading chap6
    常用的一些sql基础语句汇总
    20170322、Linux常用命令汇总
    在windows上部署使用Redis
    20170322、php基础语法
    20170822、在Linux上部署使用Redis
    Linux安装配置SVN服务器
    Linux安装配置MySQL
  • 原文地址:https://www.cnblogs.com/aden668/p/11265039.html
Copyright © 2011-2022 走看看