浅谈Python 中整型对象的存储问题

yipeiwu_com6年前Python基础

在 Python 整型对象所存储的位置是不同的, 有一些是一直存储在某个存储里面, 而其它的, 则在使用时开辟出空间.

说这句话的理由, 可以看看如下代码:

a = 5
b = 5
a is b # True

a = 500
b = 500
a is b # False

由上面的代码可知, 整型 5 是一直存在的, 而整型 500 不是一直存在的.

那么有哪些整数是一直存储的呢?

a, b, c = 0, 0, 0
while a is b:
i += 1
a, b = int(str(i)), int(str(i))
else:
print(i) # 打印 257

由上所知, 小于或等于 256 (2**8) 的非负整数是一直存储的.

a = -1
b = -1
a is b # False

而负数不会一直存储.

以上就是本文的全部内容了,希望大家能够喜欢。

相关文章

Python中函数参数匹配模型详解

当我们的函数接收参数为任意个,或者不能确定参数个数时,我们,可以利用 * 来定义任意数目的参数,这个函数调用时,其所有不匹配的位置参数会被赋值为元组,我们可以在函数利用循环或索...

Python for循环生成列表的实例

一般Python for语句前不加语句,但我在机器学习实战中看到了这两条语句: featList = [example[i] for example in dataSet] clas...

Python编程中归并排序算法的实现步骤详解

基本思想:归并排序是一种典型的分治思想,把一个无序列表一分为二,对每个子序列再一分为二,继续下去,直到无法再进行划分为止。然后,就开始合并的过程,对每个子序列和另外一个子序列的元素进行比...

Python2.x版本中cmp()方法的使用教程

 cmp()方法返回两个数的差的符号: -1 如果 x < y, 0 如果 x == y, 或者 1 如果 x > y . 语法 以下是cmp()方法的语法:...

django基于restframework的CBV封装详解

一.models数据库映射 from django.db import models # Create your models here. class Book(models.Mo...