zoukankan      html  css  js  c++  java
  • Python-内存管理

    # Cpython解释器的垃圾回收机制
    # 什么是垃圾:当一个值身上没有人绑定任何变量名(该值的引用计算=0)时,该值就是一个垃圾

    #引用计算增加
    # age=18 #18的引用计数等于1
    # x=age #18的引用计数等于2
    # print(age)
    # print(x)

    #引用计数减少
    # age=19 #18的引用计数等于1
    # print(age)

    # del x #18的引用计数等于0
    #解除引用

    #2.变量值的三个特征:
    # id:反应的是内存地址
    # type:数据类型
    # 值
    # age=18
    # print(id(age))
    # print(type(age))
    # print(age)

    # 总结:
    # 2.1. id相同,值一定相同
    # 2.2. 值相同,id可以不用
    # '''
    # >>> x='name:egon age:18***'
    # >>> y='name:egon age:18***'
    # >>> id(x)
    # 2847698422856
    # >>> id(y)
    # 2847698422928
    # '''

    # 在pycharm中, id一样
    # x=11111111111111111111111111231231231231222222222222
    # y=11111111111111111111111111231231231231222222222222
    #
    # print(id(x))
    # print(id(y))

    # 3. is 与 ==
    # == :值是否相等
    # is:id是否相等
    #
    # 4. 可变类型与不可变类型
    #4. 可变类型与不可变类型
    # 可变类型: 值改变,id不变,证明就是在改变原值
    # 不可变类型:值改变,id也变,证明根本不是在改变原值,是创建了新值,原值就是不可变类型
    # x=10
    # print(id(x))
    # x=11
    # print(id(x))


    l=['a','b','c']
    print(id(l))
    l[0]='A'
    print(id(l))
    # print(l)
  • 相关阅读:
    nyoj 42 一笔画 欧拉通路
    布丰投针实验1
    poj 1328 贪心
    uva 10026 贪心
    zoj 1375 贪心
    uva 103 经典DAG变形
    uva 11088 暴力枚举子集/状压dp
    jsp分页功能
    static静态变量的理解
    Vector & ArrayList 的主要区别
  • 原文地址:https://www.cnblogs.com/huangdong-/p/9983268.html
Copyright © 2011-2022 走看看