Python里唯一的映射类型是字典。映射类型对象里,hash值(key)和指向的对象(值)是一对多的关系。字典对象是可变的,这一点上很像列表,它也可以存储任意个数任意类型的Python对象,其中包括容器类型。字典类型和序列类型的区别是存储和访问数据的方式不同。序列类型只用数字类型的键(从序列开始按数...
分类:
编程语言 时间:
2015-09-05 12:31:16
阅读次数:
230
1.所有的python对象都拥有三个特性:①身份:每个对象都有唯一的身份标识自己,可用内建函数id()来得到。基本不会用到,不用太关心>>> a = 2>>> id(2)39411616L>>> id(a)39411616L这个例子也同时说明python中赋值其实是"引用"②类型:对象的类型决定可以...
分类:
编程语言 时间:
2015-09-03 00:43:17
阅读次数:
240
python对象占用内存任何python对象至少有两个属性,引用计数和对象所属的类型,所以需要占用2个int大小,32位机器是8字节,64位机器是16字节。引用计数和类型在CPython中用PyObject_HEAD结构体定义,分别是一个int整数和一个指针。继承object的类的对象实例,在初始化...
分类:
编程语言 时间:
2015-08-31 19:23:08
阅读次数:
166
python里面除了布尔值是True或者False之外
其他对象也存在真假值,我们可以使用bool()这个内置方法来查看
下面是一系列的例子:
>>> bool([])
False
>>> bool(1)
True
>>> bool(0)
False
>>> bool(1.1)
True
>>> bool(0.0)
False
>>> bool({})
False
>>> bool(())
...
分类:
编程语言 时间:
2015-08-30 10:02:07
阅读次数:
129
1.所有的python对象都可以支持比较操作-测试相等性、相对大小等
python的比较是检查复合对象的所有部分,直到得出结果,它会自动遍历数据结构,从左到右递归比较,有多深走多深。
>>> L1=[1,('a',4)]
>>> L2=[1,('a',4)]
>>> L1==L2,L1 is L2
(True, False)
>>> ==:对比值
is:对比内存引用
上面的例子,虽然两个列...
分类:
编程语言 时间:
2015-08-30 10:02:05
阅读次数:
192
Python用对象模型来存储数据。构造任何类型的值都是一个对象。Python对象都有是三个特性:身份,类型和值身份是每个对象的唯一身份标识。任何对象都可以用内建函数id()来得到身份。如:>>> s = 1>>> id(s)38249176身份可以认为是该对象的地址。类型是数据以何种方式保存,可以进...
分类:
编程语言 时间:
2015-08-29 18:32:14
阅读次数:
182
这一章节说说共享引用
我们先举一个例子
a=1
b=a
上面的例子就是共享引用,这里我们说说整个过程:
1.创建一个对象1
2.创建一个变量a
3.把a和1所在的内存空间连接起来,就是a引用1
4.a正在使用,创建变量b
5.a这个时候被对象1替代
6.b引用对象1
我们下面举另外两个例子:
>>> a=1.1
>>> b=1.1
>>> a is b
False
>>> ...
分类:
编程语言 时间:
2015-08-21 00:17:35
阅读次数:
161
这一章节我们聊聊对象的比较,我们分为两部分:
1.值的比较
从上图我们看见,一般值的比较都是使用==、>、
除此之外,python还实现了多个比较操作符
2.对象本身的比较(引用的比较)
python使用的是引用调用,而不是值调用,所以对比对象本身需要用到is这个关键字
上面就是一些对比的例子,但是我们从其中看见一些奇怪的现象,这就是我们所说的坑
例如:当两个...
分类:
编程语言 时间:
2015-08-17 01:08:35
阅读次数:
155
对象,面向对象的核心,也是python的核心
python对象有三个特性
1.身份:也就是id,每一个对象都有id,通过id(obj)来读取,一般很少用到这个值,所以不需太管它
2.类型:对象保存什么类型的值,通过type(obj)可以读取,type本身也是对象,他返回的不是字符串,而是对象
我们举一两个例子:
3.值:对象的数据项
当对象创建时,这三个特性都会被赋值,前两个...
分类:
编程语言 时间:
2015-08-16 23:11:05
阅读次数:
124
Python 对象 内建类型 标准类型运算符 值的比较 对象身份比较 布尔类型 标准类型内建函数 标准类型总览 各种类型 不支持的类型4.1 Python 对象Python 使用对象模型来存储数据。 构造任何类型的值都是一个对象。 尽管Python 通常.....
分类:
编程语言 时间:
2015-08-14 13:23:41
阅读次数:
137