2. 第二章 Python基础

数字提供了标量储存和直接访问。python支持多种数字类型:整型、长整型、布尔型、双精度浮点型、十进制浮点型以及复数类型。

2.1 数字简介

2.1.1 创建数值对象并用其赋值

创建数值对象和给变量赋值一样简单:

anInt = 1
aLong = -999L
aFloat = 3.1415926
aComplex = 1.23 + 4.56J

2.1.2 更新数字对象

通过给数字对象(重新)赋值,我们可以“更新”(其实是重新得到)一个数值对象:

anInt = 1
print id(anInt) #49116032
anInt = 2
print id(anInt) #49116020, Id不同,故我们认为是重新得到一个对象

其实,在Python中,我们每次将另外的数字赋值给变量的时候,实际上是创建了一个新的对象并把它赋值给变量。因为在Python中,数字是不可改变类型,也就是说变更数字的值会产生新的对象。

我们可以这样理解:

  • 在Python中,变量如同一个指针,它指向装着变量值的盒子;
  • 对于不可变类型来说,我们无法改变盒子里的内容,但可以将指针指向一个新盒子

如图:

数值对象的引用

2.1.3 删除数字对象

在python中,我们无法真正删除一个数值对象,我们仅仅是不再引用它而已:

anInt = 1
print anInt  ##1
del anInt
print anInt  ## NameError: name 'anInt' is not defined