第 3 章 组合数据类型

3.1 序列类型

序列类型支持成员操作符(in)、大小计算函数(len())、分片([]),并且都是可迭代的。

元组(tuple):有序的,包含0个或多个对象引用。元组是固定的不可修改。如果要修改元组可以用List()将其转换为列表。

命名元组(namedtuple):简单记录一下用法。

>>> import collections
>>> Student = collections.namedtuple("Student","name id")
>>> stu = []
>>> stu.append(Student("zhan",1))
>>> stu.append(Student("li",2))
>>> for s in stu:
            print("{0}   {1}".format(s.name,s.id))   
zhan   1
li   2

列表(list):有序,包含0个或多个对象引用。列表时刻变的。

列表内涵:看代码,代码算出1960--2011之间的闰年。

>>> leapyear = [y for y in range(1960,2011) if(y%4==0 and y%100!=0) or (y%400==0)]
>>> leapyear
[1960, 1964, 1968, 1972, 1976, 1980, 1984, 1988, 1992, 1996, 2000, 2004, 2008]

3.2 集合类型

集合类型是一种组合数据类型,支持成员操作符(in)、大小计算函数(len()),并且是iterable。

集合(set):无序的,0个或多个对象引用。没有分片,没有索引的概念。

集合内涵:

>>> leapyear = {y for y in range(1960,2011) if(y%4==0 and y%100!=0) or (y%400==0)}
>>> leapyear
{1984, 2000, 1988, 2008, 1960, 1996, 1964, 1968, 1992, 1972, 1976, 2004, 1980}

3.3 映射类型

映射类型(dict):键-值数据项的集合,无序的。(Python3.1提供了有序的collections.OrderedDict)

3.4 组合数据类型的迭代与复制

可用于迭代子的一些函数:all(),any(),min(),max(),sum(),len().


这章由于系统问题后来补的,原来的要详细的多。PS:对于一些数据类型的方法help()函数查看。

posted @ 2011-06-04 20:12  小苏打  阅读(235)  评论(0编辑  收藏  举报