最基本的数据结构是序列,序列中每个元素被分配一个序号 - 元素的位置,也称索引。第一个索引为 0,最后一个元素索引为 - 1。
python 中包含 6 种内建的序列:元组、列表、字符串、unicode 字符串、buffer 对象和 xrange 对象。元组与列表的区别:列表可以对其元素进行修改,元组不能改动其元素。
序列的通常操作:索引、分片、加、乘、成员资格(in)、迭代。python 中关于序列的内建函数:计算序列长度、找出最大元素和最小元素。
1、索引
- 1>>> greeting ='hello'
- 2>>> greeting[0]
- 3 'h'
- 4>>> greeting[-1]
- 5 'o'
- 6>>>'hello'[0]
- 7 'h'
2、分片
- 1>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
- 2>>> numbers[3:6]
- 3[4, 5, 6]
- 4>>> numbers[-3:]
- 5[8, 9, 0]
- 6>>> numbers[:3]
- 7[1, 2, 3]
- 8>>> numbers[:]
- 9[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
- 10>>> numbers[0:10:2]
- 11[1, 3, 5, 7, 9]
- 12>>> numbers[::4]
- 13[1, 5, 9]
- 14>>> numbers[8:3:-1]
- 15[9, 8, 7, 6, 5]
3、序列相加
- #相同类型的序列才能进行连接操作
4、乘法
- #初始化一个长度为10的列表>>> sequence = [None]*10
- >>> sequence
- [None, None, None, None, None, None, None, None, None, None]
5、成员资格
- >>> permission ='sdnk'>>>'dn' in permission
- True
6、长度、最小值及最大值
- #len、min、max
列表的内建函数:
7、列表的元素修改 - del、split
- >>> names = ['Alice','Bob','Vera','Amy','Beth','2','23']
- >>> names[1] ='venus'>>> names
- ['Alice','venus','Vera','Amy','Beth','2','23']
- >>>delnames[1]
- >>> names
- ['Alice','Vera','Amy','Beth','2','23']
- >>> names = list('perl')>>> names
- ['p','e','r','l']
- >>> names[2] ='xliu vera'>>> names
- ['p','e','xliu vera','l']
- >>> names[2] = ('l','e')
- >>> names
- ['p','e', ('l','e'),'l']
- >>> number = [1,3,5]
- >>> number[1:1] = [6,8,7]
- >>> number
- [1, 6, 8, 7, 3, 5]
- >>> number[1:4] = []
- >>> number
- [1, 3, 5]
列表方法:方法与对象联系紧密,对象可以是列表,数字,字符串或者其他类型。格式:对象. 方法(参数)
8、列表 - append、count、extend、index、insert、pop
- >>> lst = [1,2,3]
- >>> lst.append(4)
- >>> lst
- [1, 2, 3, 4]
- >>> lst.count(2)>>> lst1 = [6,7,8]
- >>> lst.extend(lst1)
- >>> lst
- [1, 2, 3, 4, 6, 7, 8]
- >>> lst.index(3)
- 2
- >>> lst.insert(3,'Bob')#格式:操作对象.insert(位置,插入内容)>>> lst
- [1, 2, 3,'Bob', 4, 6, 7, 8]
- >>> lst.pop()#默认的情况下,删除列表的最后一个元素并返回值8
- >>> lst
- [1, 2, 3,'Bob', 4, 6, 7]
- >>> lst.pop(0)#移除索引为0的元素并返回其值1
- >>> lst
- [2, 3,'Bob', 4, 6, 7]>>> lst.remove('Bob')>>> lst[2, 3, 4, 6, 7]>>> lst.reverse()>>> lst[7, 6, 4, 3, 2]
9、列表 - sort
- >>> x = [1,3,5,12,9,11,0,4]
- >>> y = x[:]#调用x[:]得到的是每个元素的分片,有效的复制了列表x>>> y.sort()
- >>> x
- [1, 3, 5, 12, 9, 11, 0, 4]
- >>> y
- [0, 1, 3, 4, 5, 9, 11, 12]
- >>> y = x#x,y同指一个列表,任意改变其中之一另一个也会改变>>> y.sort()
- >>> x
- [0, 1, 3, 4, 5, 9, 11, 12]
- >>> y
- [0, 1, 3, 4, 5, 9, 11, 12]
- #获取一个已经排序好的副本>>> x = [1,4,3,6,2,7,3]
- >>> y = sorted(x)
- >>> x
- [1, 4, 3, 6, 2, 7, 3]
- >>> y
- [1, 2, 3, 3, 4, 6, 7]
- #以上都是按照默认的排序方式>>> x = ['hi','we','are','family','2']
- >>> x.sort(key = len)#按照字符的长度排序>>> x
- ['2','hi','we','are','family']
- >>> x.sort(reverse = True)#反向排序>>> x
- ['we','hi','family','are','2']
10、元组:基本的元组操作除了创建元组及访问元组外没有其他的操作
- >>> 1,2,3
- (1, 2, 3)
- >>> ()#创建空元组
- ()
- >>> 42,#创建只有一个元素的元祖(42,)
- >>> (42,)
- (42,)
- >>> tuple([1,2,3])#tuple 将序列转化为元组,功能与list相近(1, 2, 3)
来源: http://www.cnblogs.com/venus-1027/p/6770376.html