1 基本数据类型
具体每个数字,在Python中都是一个对象,比如前面输入的3,就是一个对象。每个对象,在内存中都有自己的一个地址,这个就是它的身份。
>>> id(3)
140574872
>>> id(3.222222)
140612356
>>> id(3.0)
140612356
>>>
用内建函数id()可以查看每个对象的内存地址,即身份。
内建函数,英文为built-in Function,读者根据名字也能猜个八九不离十了。不错,就是Python中已经定义好的内部函数。
以上三个不同的数字,是三个不同的对象,具有三个不同的内存地址。特别要注意,在数学上,3和3.0是相等的,但是在这里,它们是不同的对象。 用id()得到的内存地址,是只读的,不能修改。
了解了“身份”,再来看“类型”,也有一个内建函数供使用type()。
>>> type(3)
<type 'int'>
>>> type(3.0)
<type 'float'>
>>> type(3.222222)
<type 'float'>
用内建函数能够查看对象的类型。,说明3是整数类型(Interger);则告诉我们那个对象是浮点型(Floating point real number)。与id()的结果类似,type()得到的结果也是只读的。
至于对象的值,在这里就是对象本身了。
看来对象也不难理解。请保持自信,继续。
仅仅写出3、4、5是远远不够的,在编程语言中,经常要用到“变量”和“数”(在python中严格来讲是对象)建立一个对应关系。例如:
>>> x = 5
>>> x
5
>>> x = 6
>>> x
6
在这个例子中,x = 5
就是在变量(x)和数(5)之间建立了对应关系,接着又建立了x与6之间的对应关系。我们可以看到,x先“是”5,后来“是”6。
在python中,有这样一句话是非常重要的:对象有类型,变量无类型。怎么理解呢?
首先,5、6都是整数,python中为它们取了一个名字,叫做“整数”类型的数据,或者说数据类型是整数,用int表示。
当我们在python中写入了5、6,computer姑娘就自动在她的内存中某个地方给我们建立这两个对象(对象的定义后面会讲,这里你先用着,逐渐就明晰含义了),就好比建造了两个雕塑,一个是形状似5,一个形状似6,这就两个对象,这两个对象的类型就是int.
那个x呢?就好比是一个标签,当x = 5
时,就是将x这个标签拴在了5上了,通过这个x,就顺延看到了5,于是在交互模式中,>>> x
输出的结果就是5,给人的感觉似乎是x就是5,事实是x这个标签贴在5上面。同样的道理,当x = 6
时,标签就换位置了,贴到6上面。
所以,这个标签x没有类型之说,它不仅可以贴在整数类型的对象上,还能贴在其它类型的对象上,比如后面会介绍到的str(字符串)类型的对象等等。
这是python区别于一些语言非常重要的地方。