zoukankan      html  css  js  c++  java
  • python里面为什么shell和保存文件运行结果不一样的相关思考(内存相关)

    python里面为什么shell和保存文件运行结果不一样?

    对于该问题shell与py文件的输出结果不一致,shell为False,.py为True

    v1 = 257
    v2 = 257
    a = v1 is v2
    print(a)

    思考:

    • 按道理说v1和v2虽然为同一个值但其开辟的内存是不同的(此处还涉及一个“小数据池”的概念:对于整型-5~256.以及常见的字符串python不再开辟新的内存。所以对于这些数据其可以指向同一内存,当是这些数据时其输出结果为True),is本身就是比较内存是否相同的,所以输出的结果理应为False

    • 那么shell与.py的结果为什么不一致?(个人见解)

      • 在.py文件中相对于shell中的每新增一个变量都会新增一个对象,py文件可以在一定程度上扩展小数据池的范围,就int而言大概在十几位数就会出现改变,字符型包括罕见符号在内的试了七八十位没找到变化
  • 相关阅读:
    hdu3613(扩展KMP)
    hdu4333(扩展KMP)
    poj 2185
    指数型母函数
    java高精度hdu4043
    卡特兰数简单应用
    hdu3625(第一类斯特林数)
    卡特兰数和斯特林数(转载)
    hdu4045(递推)
    java 中sendredirect()和forward()方法的区别
  • 原文地址:https://www.cnblogs.com/yangzilaing/p/13456168.html
Copyright © 2011-2022 走看看