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

    1. 简述执行Python程序的两种方式以及他们的优缺点:

      交互式(jupyter)

      优点:运行一句执行一句

      缺点:关闭即消失

      命令行式(pycharm)

      优点:一直保存

      缺点:全部写完才能调试bug

    2. 简述Python垃圾回收机制:

      ​ 对于p1.py,如果我们再加上一段代码x = 11,大内存会开辟另一个小空间存储变量值11,把变量值绑定另一个门牌号x,但是由于之前有x,所以大内存会解除x与10的连接,让x与11连接。这个时候10由于没有了门牌号,所以成为了python眼中的垃圾,python就会处理这个垃圾,释放10的内存占用,这就是python的垃圾回收机制。而其他语言需要手动把10的内存占用释放掉。

    3. 对于下述代码:

    x = 10
    y = 10
    z = 10
    del y
    

    10的引用计数为多少?

    答:10的引用计数为2

    x = 257
    y = x
    del x
    z = 257
    

    x对应的变量值257的引用计数为多少?

    答:x对应的变量值257的引用计数为 1

    1. 简述Python小整数池概念:

      答:[-5,256]在python解释器启动的时候就自动开辟,所以说他不会受垃圾回收机制的影响,适用于jupyter

    2. 对于x = 10,请用Python代码分别打印变量值、变量值内存地址和变量数据类型:

    x = 10
    

    print(x)

    print(id(x))

    print(type(x))

    1. 对于下述代码:
    x = 257
    y = x
    z = 257
    

    请判断x、y、z的变量值是否相同?x、y、z的所在的内存地址是否相同?请用python代码阐述为什么?

    x,y,z的变量值是相同的。 x和y的内存地址是相同的,但z的地址和x,y不同。

    print(x is y) # True

    print(x is z) # False

    1. 通过预习写一个猜年龄游戏,需求:给定一个标准年龄,用户通过输入年龄判断年龄是否等于标准年龄,如果等于——打印猜对了;如果小于——打印猜小了;如果大于——打印猜大了

      ​ x= 12

      ​ y = input('请输入要猜的年龄:')

      ​ if y == x :

      ​ print('猜对了')

      ​ else :

      ​ if y > x :

      ​ print('猜大了')

      ​ else:

      ​ print('猜小了')

  • 相关阅读:
    Spring Data JPA 入门篇
    44444444444444444444444444444444dddddddddd66666666666666666666666666
    1111111111111
    第二个随笔啊
    我的第一个Node web程序
    centos 6 不能上网
    开通博客园
    【转载】【超详细教程】使用Windows Live Writer 2012和Office Word 2013 发布文章到博客园全面总结
    Ajax返回值之XML、json类型
    XHR详细讨论
  • 原文地址:https://www.cnblogs.com/cheng825/p/11265941.html
Copyright © 2011-2022 走看看