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都一样.

  • 相关阅读:
    小w的喜糖(candy)
    亚瑟王(arthur)
    Bajtman i Okrągły Robin
    Bajtman i Okrągły Robin
    网络流模板
    网络流模板
    觉醒力量 (hidpower)
    觉醒力量 (hidpower)
    E-card
    E-card
  • 原文地址:https://www.cnblogs.com/aden668/p/11265039.html
Copyright © 2011-2022 走看看