2.1Python下序列概述
下一篇: 2.2Python下序列索引
任何一门编程语言都涉及到数据结构,数据结构是通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构。在Python中,最基本的数据结构是序列(sequence)。序列中的每个元素被分配一个序号—即元素的位置,也称为索引。第一个索引是0,第二个索引是1,以此类推。
Python中包含了6中内建的序列,最常用的是:列表和元组。其余的内建序列类型有字符串、Unicode字符串、buffer对象和xrange对象。
列表和元组的主要区别在于,列表可以修改,元组则不能。也就是说如果要根据要求来添加元素,那么列表可能会更好用;而出于某些原因,序列不能修改的时候,使用元组则更为合适。使用元组的理由通常是技术性的,它与Python内部的运作方式有关。这也是内建函数可能返回元组的原因。一般来说,在几乎所有情况下列表都可以替代元组(需要注意例外情况:使用元组作为字典的键时,在这种情况,因为键不可修改,所以就不能用列表)。
在需要操作一组数值的时候,序列很好用。可以用序列表示数据库中一个人的信息:第1个元素是姓名,第2个元素是年龄。根据上述内容就可以编写一个列表(列表的各个元素通过逗号分隔,写在方括号中),如下:
>>> person = ['psz','23']
同时,序列中也可以包含其他的序列,因此,构建如下的一个人员信息的列表也是可以的,构建人员信息数据库:
>>> student1 = ['xiaoming',13] >>> student2 = ['xiaohong',12] >>> all_stu = [student1,student2] >>> all_stu [['xiaoming', 13], ['xiaohong', 12]]
注意:Python之中还有一种名为容器(container)的数据结构。容器基本上是包含其他对象的任意对象。序列(如列表和元组)和映射(如字典)是两类主要的容器。序列中每个元素都有自己的编号,而映射中的每个元素则有一个名字(也称为键)。然而集合(set)属于既不是序列也不是映射的容器类型。
下一篇: 2.2Python下序列索引